Deploying Applications to Weblogic Using Maven
Join the DZone community and get the full member experience.
Join For FreeWhen developing JEE applications as part of the development cycle, it’s important to deploy to a development server before running end to end or integration tests. This blog demonstrates how to deploy your applications to your Weblogic server using Maven and, it transpires that there are at least two ways of doing this.
The first way is using a the weblogic-maven-plugin available from Oracle and you can find an article on how to install this available on the Oracle website. The unfortunate thing about this is that Oracle don’t deploy their JARs to a Maven repository, which means that you have to do some jiggery-pokery messing around setting up your local repository. The Oracle article defines three steps: creating a plug-in jar using the wljarbuilder tool, extracting the pom.xml and then installing the results to your local repository using mvn install:install-file. In order to use this plug-in, you’ll need to add the following to your program’s POM file:
<plugin> <groupId>com.oracle.weblogic</groupId> <artifactId>weblogic-maven-plugin</artifactId> <version>10.3.4</version> <configuration> <adminurl>t3://localhost:7001</adminurl> <user>weblogic</user> <password>your-password</password> <upload>true</upload> <action>deploy</action> <remote>false</remote> <verbose>true</verbose> <source>../marin-tips-ear/target/marin-tips.ear</source> <name>${project.build.finalName}</name> </configuration> <executions> <execution> <phase>install</phase> <goals> <goal>deploy</goal> </goals> </execution> </executions> </plugin>
The second method of deploying an application to your Weblogic server is by using a ‘good-ol’ Ant script. This method is simpler as you don’t need to bother creating plug-in JARs or installing them in your local repository. The POM file additions are:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-antrun-plugin</artifactId> <version>1.6</version> <executions> <execution> <id>deploy-to-server</id> <phase>pre-integration-test</phase> <configuration> <tasks> <property environment="env"/> <taskdef name="wldeploy" classpath="/Users/Roger/Weblogic/wls1035_dev/wlserver/server/lib/weblogic.jar" classname="weblogic.ant.taskdefs.management.WLDeploy"/> <wldeploy action="deploy" verbose="true" source="../marin-tips-ear/target/marin-tips.ear" name="marin-tips" user="weblogic" password="password" adminurl="t3://localhost:7001" targets="myserver"/> </tasks> </configuration> <goals> <goal>run</goal> </goals> </execution> </executions> </plugin>
I prefer the old fashioned Ant way more purely because it’s less hassle and adheres to the Keep It Simple Stupid rule of programming as, unless Oracle make their JAR files available on some repository, then extra set-up steps aren’t really an improvement.
From http://www.captaindebug.com/2011/09/deploying-applications-to-weblogic.html
Opinions expressed by DZone contributors are their own.
Comments