Size: 604
Comment:
|
Size: 4326
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 18: | Line 18: |
Package: [[attachment:apache-maven-3.0.4-noarch-1_SBo.tgz]] == User settings == You can specify your user configuration in ${user.home}/.m2/settings.xml. The default location of your local repository is ${user.home}/.m2/repository/. == Maven sample web app == === web app creation === * mvn archetype:generate -DgroupId=org.allowed.bitarus -DartifactId=WebApp -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false * cd WebApp * mvn clean * mvn compile * mvn package === Deploy web app on jboss AS 7.1.1 === * /opt/jboss-as-7.1.1.Final/bin/standalone.sh * http://localhost:9990 * admin 12345678 * Manage deployments * Add content * Choose file ~/WebApp/target/WebApp.war * next, save * enable , confirm * http://localhost:8080/WebApp/ === Add REST and servlet support === * url http://localhost:8080/WebApp/rest/testSvc/paramx Add dependencies to pom.xml, jboss AS 7.1.1 JAX-RS {{{#!highlight xml <dependency> <groupId>org.jboss.resteasy</groupId> <artifactId>resteasy-jaxrs</artifactId> <version>2.2.1.GA</version> <scope>provided</scope> </dependency> <dependency> <groupId>javax</groupId> <artifactId>javaee-web-api</artifactId> <version>6.0</version> <scope>provided</scope> </dependency> }}} === Create source code for REST service and servlet === File src/main/java/org/allowed/bitarus/TestService.java URL http://localhost:8080/WebApp/rest/testSvc/asddddd {{{#!highlight java package org.allowed.bitarus; import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.PathParam; import javax.ws.rs.core.Response; @Path("/testSvc") public class TestService { @GET @Path("/{param}") public Response getMsg(@PathParam("param") String msg) { String out = String.format("testSvc returns %s", msg); return Response.status(200).entity(out).build(); } } }}} File src/main/java/org/allowed/bitarus/Servletx.java http://localhost:8080/WebApp/servletxxx {{{#!highlight java package org.allowed.bitarus; import javax.servlet.*; import javax.servlet.http.*; import java.io.*; public class Servletx extends HttpServlet{ public void service(HttpServletRequest req, HttpServletResponse res) throws IOException { res.setContentType("text/html"); PrintWriter out = res.getWriter(); out.println("<html><head><title>Hello World!</title></head>"); out.println("<body><h1>Hello World!</h1></body></html>"); } } }}} === Configure web app === File src/main/webapp/WEB-INF/web.xml {{{#!highlight xml <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" > <web-app> <display-name>Archetype Created Web Application</display-name> <context-param> <param-name>resteasy.scan</param-name> <param-value>true</param-value> </context-param> <context-param> <param-name>resteasy.servlet.mapping.prefix</param-name> <param-value>/rest</param-value> </context-param> <servlet> <servlet-name>resteasy-servlet</servlet-name> <servlet-class>org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher</servlet-class> </servlet> <servlet-mapping> <servlet-name>resteasy-servlet</servlet-name> <url-pattern>/rest/*</url-pattern> </servlet-mapping> <servlet> <servlet-name>Servletx</servlet-name> <servlet-class>org.allowed.bitarus.Servletx</servlet-class> </servlet> <servlet-mapping> <servlet-name>Servletx</servlet-name> <url-pattern>/servletxxx</url-pattern> </servlet-mapping> </web-app> }}} |
Apache Maven
Maven is a software project management and comprehension tool. Based on the concept of a Project Object Model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information.
Requires Java.
Slackbuild
- su
- cd /tmp
wget http://slackbuilds.org/slackbuilds/14.0/development/apache-maven.tar.gz
- tar xvzf apache-maven.tar.gz
- cd apache-maven
wget http://archive.apache.org/dist/maven/binaries/apache-maven-3.0.4-bin.tar.gz
./apache-maven.SlackBuild
- installpkg /tmp/apache-maven-3.0.4-noarch-1_SBo.tgz
Package: apache-maven-3.0.4-noarch-1_SBo.tgz
User settings
You can specify your user configuration in ${user.home}/.m2/settings.xml. The default location of your local repository is ${user.home}/.m2/repository/.
Maven sample web app
web app creation
mvn archetype:generate -DgroupId=org.allowed.bitarus -DartifactId=WebApp -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false
cd WebApp
- mvn clean
- mvn compile
- mvn package
Deploy web app on jboss AS 7.1.1
- /opt/jboss-as-7.1.1.Final/bin/standalone.sh
- admin 12345678
- Manage deployments
- Add content
- Choose file ~/WebApp/target/WebApp.war
- next, save
- enable , confirm
Add REST and servlet support
Add dependencies to pom.xml, jboss AS 7.1.1 JAX-RS
1 <dependency>
2 <groupId>org.jboss.resteasy</groupId>
3 <artifactId>resteasy-jaxrs</artifactId>
4 <version>2.2.1.GA</version>
5 <scope>provided</scope>
6 </dependency>
7 <dependency>
8 <groupId>javax</groupId>
9 <artifactId>javaee-web-api</artifactId>
10 <version>6.0</version>
11 <scope>provided</scope>
12 </dependency>
Create source code for REST service and servlet
File src/main/java/org/allowed/bitarus/TestService.java
URL http://localhost:8080/WebApp/rest/testSvc/asddddd
1 package org.allowed.bitarus;
2
3 import javax.ws.rs.GET;
4 import javax.ws.rs.Path;
5 import javax.ws.rs.PathParam;
6 import javax.ws.rs.core.Response;
7
8 @Path("/testSvc")
9 public class TestService {
10
11 @GET
12 @Path("/{param}")
13 public Response getMsg(@PathParam("param") String msg) {
14 String out = String.format("testSvc returns %s", msg);
15 return Response.status(200).entity(out).build();
16 }
17
18 }
File src/main/java/org/allowed/bitarus/Servletx.java
http://localhost:8080/WebApp/servletxxx
1 package org.allowed.bitarus;
2
3 import javax.servlet.*;
4 import javax.servlet.http.*;
5 import java.io.*;
6
7 public class Servletx extends HttpServlet{
8 public void service(HttpServletRequest req, HttpServletResponse res) throws IOException
9 {
10 res.setContentType("text/html");
11 PrintWriter out = res.getWriter();
12 out.println("<html><head><title>Hello World!</title></head>");
13 out.println("<body><h1>Hello World!</h1></body></html>");
14 }
15 }
Configure web app
File src/main/webapp/WEB-INF/web.xml
1 <!DOCTYPE web-app PUBLIC
2 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
3 "http://java.sun.com/dtd/web-app_2_3.dtd" >
4 <web-app>
5 <display-name>Archetype Created Web Application</display-name>
6 <context-param>
7 <param-name>resteasy.scan</param-name>
8 <param-value>true</param-value>
9 </context-param>
10
11 <context-param>
12 <param-name>resteasy.servlet.mapping.prefix</param-name>
13 <param-value>/rest</param-value>
14 </context-param>
15
16 <servlet>
17 <servlet-name>resteasy-servlet</servlet-name>
18 <servlet-class>org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher</servlet-class>
19 </servlet>
20 <servlet-mapping>
21 <servlet-name>resteasy-servlet</servlet-name>
22 <url-pattern>/rest/*</url-pattern>
23 </servlet-mapping>
24
25 <servlet>
26 <servlet-name>Servletx</servlet-name>
27 <servlet-class>org.allowed.bitarus.Servletx</servlet-class>
28 </servlet>
29 <servlet-mapping>
30 <servlet-name>Servletx</servlet-name>
31 <url-pattern>/servletxxx</url-pattern>
32 </servlet-mapping>
33 </web-app>