Deploy RESTEasy-Spring project into WildFly Servlet-Only Container
By Wei Nan Li | April 10, 2020
In this blog I'd like to demonstrate the process to deploy the resteasy-spring-basic
example project into WildFly Servlet-Only Distribution.
The example can be fetched from here:
You can clone the example project and do the package of the example by running the Maven command:
$ pwd
resteasy-examples/resteasy-spring-basic
$ mvn package
...
[INFO] BUILD SUCCESS
After packaging is done we can get a WAR file:
$ ls target/*.war
target/resteasy-spring-example-basic.war
We will use this war to deploy to the WildFly server later.
The next step is to download the WildFly, and here is the download link:
In the download page, you can find the Servlet-Only Distribution
. And Click the ZIP
format to download it.
For the time I'm writing this blog, the 19.0.0.Final
is the latest version, so I downloaded the wildfly-servlet-19.0.0.Final.zip
from the page.
After the zip is downloaded, I extract it to my work directory:
$ cd wildfly-servlet-19.0.0.Final
And then I entered the bin
directory for the server:
$ cd bin
Then I run the WildFly in standalone mode:
$ ./standalone.sh
...
14:49:27,801 INFO [org.jboss.as] (Controller Boot Thread) WFLYSRV0025: WildFly Servlet 19.0.0.Final (WildFly Core 11.0.0.Final) started in 1772ms - Started 138 of 142 services (40 services are lazy, passive or on-demand)
From above we can see the server is started. Then I opened another terminal window and enter the bin
directory again:
$ pwd
wildfly-servlet-19.0.0.Final/bin
Then I run the jboss-cli.sh
in the directory and use it to connect to the server:
$ ./jboss-cli.sh
connect You are disconnected at the moment. Type 'connect' to connect to the server or 'help' for the list of supported commands.
[disconnected /] connect localhost
[standalone@localhost:9990 /]
As the text shown above it connected to the WildFly server. Then I deployed the WAR file into the server with following command:
[standalone@localhost:9990 /] deploy resteasy-examples/resteasy-spring-basic/target/resteasy-spring-example-basic.war
After running the above command, the server outputs the log:
14:50:34,459 INFO [org.wildfly.extension.undertow] (ServerService Thread Pool -- 47) WFLYUT0021: Registered web context: '/resteasy-spring-example-basic' for server 'default-server'
14:50:34,496 INFO [org.jboss.as.server] (management-handler-thread - 1) WFLYSRV0010: Deployed "resteasy-spring-example-basic.war" (runtime-name : "resteasy-spring-example-basic.war")
As the log shows the project is deployed. Now we can try to access the service:
$ curl http://localhost:8080/resteasy-spring-example-basic/rest/foo/hello
Hello, world!
As the output shown above we can see the service can be accessed.