1. Ensure you have deployed the rqeuired Jersey libraries on WLS 10.3.4 and targetted them to the managed server you are going to deploy to. Those libraries are shipped with WLS 10.3 in $WLS_HOME/common/deployable-libraries.
2. Create a weblogic.xml within your "Demo" project which includes the references to the 2 libraries above.
<?xml version = '1.0' encoding = 'windows-1252'?> <weblogic-web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.bea.com/ns/weblogic/weblogic-web-app http://www.bea.com/ns/weblogic/weblogic-web-app/1.0/weblogic-web-app.xsd" xmlns="http://www.bea.com/ns/weblogic/weblogic-web-app"> <context-root>jaxrs-demo</context-root> <library-ref> <library-name>jersey-bundle</library-name> <specification-version>1.1.1</specification-version> <implementation-version>1.1.5.1</implementation-version> </library-ref> <library-ref> <library-name>jsr311-api</library-name> <specification-version>1.1.1</specification-version> <implementation-version>1.1.1</implementation-version> </library-ref> </weblogic-web-app>
3. Create a WAR deployment profile within your "Demo" project ensuring you don't deploy the libraries you used in JDeveloper. They are not needed as the libraries exist in WLS 10.3.4 which we are referencing. In short your WAR file would only contain 3 files here.
1004 Wed Mar 02 13:08:34 EST 2011 WEB-INF/classes/pas/au/jdev/rs/HelloWorld.class
635 Tue Mar 01 10:50:52 EST 2011 WEB-INF/web.xml
780 Wed Mar 02 13:08:16 EST 2011 WEB-INF/weblogic.xml
4. Deploy the WAR file targeting it to the managed server from JDeveloper itself.
[01:10:00 PM] ---- Deployment started. ----
[01:10:00 PM] Target platform is (Weblogic 10.3).
[01:10:32 PM] Retrieving existing application information
[01:10:33 PM] Running dependency analysis...
[01:10:33 PM] Building...
[01:10:33 PM] Deploying profile...
[01:10:34 PM] Wrote Web Application Module to C:\jdev\jdevprod\11114\jdeveloper\jdev\mywork\JAX-RS-RESTFulWebServices\Demo\deploy\helloworld-jaxrs.war
[01:10:37 PM] Deploying Application...
[01:11:08 PM] [Deployer:149191]Operation 'deploy' on application 'helloworld-jaxrs' is initializing on 'apple'
[01:11:12 PM] [Deployer:149192]Operation 'deploy' on application 'helloworld-jaxrs' is in progress on 'apple'
[01:11:16 PM] [Deployer:149194]Operation 'deploy' on application 'helloworld-jaxrs' has succeeded on 'apple'
[01:11:24 PM] [Deployer:149191]Operation 'deploy' on application 'helloworld-jaxrs' is initializing on 'apple'
[Deployer:149192]Operation 'deploy' on application 'helloworld-jaxrs' is in progress on 'apple'
[01:11:24 PM] Application Deployed Successfully.
[01:11:28 PM] The following URL context root(s) were defined and can be used as a starting point to test your application:
[01:11:28 PM] http://10.187.81.36:7003/jaxrs-demo
[01:11:30 PM] Elapsed time for deployment: 1 minute, 30 seconds
[01:11:30 PM] ---- Deployment finished. ----
3 comments:
Thanks for posting this.
In my case, I had a clash with class org.objectweb.asm.ClassReader loaded by the system loader, so I deployed the asm.jar with the project and created a filter so the class in the my project would be used: The weblogic.xml file was:
appinvoutbound
org.objectweb.asm.*
Thanks for your post.
In my case I had to deploy with the asm-3.1.jar and create a filter so the ClassReader.class from that library was used, instead of the one loaded by the system. The weblogic.xml was
jaxrsdemo
org.objectweb.asm.*
BRILLLLLLLIAAANNNTT POSSSSTT!!!
Post a Comment