Creation of war ,jar ,ear usign ant

HI,
I have a three portal project. using Jdeveloper i create a ear file for deployment. this ear contains adfm.xml in meta-inf and a war.
this war contain all three project java compile code and jsf/jsp stuff in webinf . In webinf lib folder apart from other jar files , it also create two jar of one of the two project and put in lib folder..
I want to do all the above steps using ANT...
i tried that , I compile all the java code and copy in location and copy other jsp/jsf tooo... and able to create a ear file containing war and jar...
the difference i m seeing which is actaully a issue is runtime creation of some files and modification of some files when we create ear from Jdeveloper , which is not happening with ant....
life adfm.xml which is found in all three project and while creatiing it ear using JD it merge all threee and put one in ear metainf folder ..
same for jar creation , jar-adf-config.xml,jar-connections.xml which is not a part of source code and generate at the time of jar creation using JD....
same for MANIFEST.MF,oracle.adf.common.services.ResourceService.sva for jar creation and AutoGeneratedMar in ear creation
I don;t know how should i create /update these files using ANT..
Can some body please help,sugesst..
thank
anagh
Edited by: Anagh on Oct 11, 2011 12:18 AM

for better understanding on ant script to create and manage all war ,jar and ear activities-
follow the below links -
http://biemond.blogspot.com/2009/04/weblogic-jdeveloper-ant-tasks.html
http://www.google.co.in/url?sa=t&source=web&cd=6&ved=0CEkQFjAF&url=http%3A%2F%2Fone-size-doesnt-fit-all.blogspot.com%2F2007%2F02%2Fjdeveloper-script-mastery-with-ant.html&rct=j&q=jdeveloper%2011g%20ant%20&ei=HgqUTuvfEJDrrQed4pW6Bg&usg=AFQjCNH5Qe3luLFtC9YeT1DfF8R0qVaUjQ&cad=rja

Similar Messages

  • Jar, War or Ear file ?

    Hi,
    I am a total newbie in J2EE technology.
    I am currently using Sun One Application. Using the sample application, it produces all the Jar, War and Ear files.
    My understanding is Jar is produced to be a library-like usage.
    War is for web application.
    And Ear is for what?? oops EJB? Can someone tell me?
    Anyway, my concern is, if I am to produce Ear, war, or Jar file after deploy, I have problems doing the testing. Let's say I want to modify the Jsp file, then I have to use ant to compile all, undeploy the instance and deploy again.
    Any better way?

    your jar files contain your EJBs, your WAR file contains your web application (JSPs, servlets and support) and these are all bundled into your EAR file. All of these files are just zip-formatted archives, you can look at them all via the jar tool (or something like WinZip, if you are so inclined). Each of these will contain a descriptor file (in XML format) - check out the J2EE spec on it.
    Lee

  • Putting unix utility visible version info into ear, war, jar files?

    I would like to be able to use some unix utility (or java itself without a separate program) to display my version information for jar-like artifacts: ear, war, jar.
    In other words, when I build one of these things, I'd like to put my SVN version, date, user name, and maybe some other stuff into it in a way that can be read without a custom program. This needs to be done as part of the ant build (without requiring a custom java program).
    For example, one approach would be "strings | grep <special-string>" if I could put something, somewhere in the file that had this as 8-bit character encoding.
    For jars, making the jar executable and having the main print it out works, but I don't think that's do-able for ears and wars, and it would be desirable to have a consistent approach.
    Anyone already doing this?
    Ideas?

    For example, I don't think you can specify a mainline in the manifest of an ear or war.
    They have pretty strictly defined formats, and I don't want to risk violating a standard by tinkering outside the standard.Possible, but you can always run it as java -cp myWar.war my.utility.Version.
    There may be another possibility, but I'm unable to find any reference though:
    In my early Java days, I used to work on a system where there was a Unix utility (called something like +"ident"+) that was able to extract version and description info stuffed in a .so file (under which "standard" or proprietary format was the info stored, I don't know).
    I used to see it work on individual Java .class files too (from memory we had to put a String constant name "VERSION" in the class) and maybe jar files (I'm unsure).
    One of my co-workers at that time had described that as a standard tool, but "ident" turns up nothing of that kind on Google... And I've never since encountered any description of the "VERSION" constant naming convention...
    I was young and naive, I hope I were not bluffed by some alias in a custom setup... :o(
    Edited by: jduprez on Feb 18, 2010 11:30 AM
    OK a bit more reserah turned up [that man page|http://man-wiki.net/index.php/1:ident]. Apparently ident is part of RCS (installed along with CVS), and works by grepping the target file for patterns such as "$keyword: text $" (which is RCS/CVS keyword substitution pattern). Now that it mentions it, I remeber that that's what we put into our VERSION constant's value ("$version : ...$", or something of that kind).
    So:
    1) it's not so standard after all, you have to install the rcs package on the target host (regardless of whether you use RCS for configuration management, which would probably be a bad idea nowadays)
    2) you have to put such formatted strings somewhere in your code or configuration files (easy with Ant, if not genuinely through Subversion)
    3) To have it work on jar, war, ear, files, you have to make sure that the file is not compressed (otherwise the pattern might not appear in clear). I don't know whether that's easy to configure using Ant's jar, war, ear tasks.
    A bit of a hassle compared to stuffing your own utility class and using java -cp...

  • How to Create a jar war or ear--Probelms in deploying

    I have the following dir structure. I am using Struts 1.1 and weblogic 7.0
    APP
    +jsp
    +WEB-INF
    + ---lib
    +--- classes
    +----com
    --ap
    --action
    --beans
    --handler
    --service
    --client
    --ejb
    --valueobject
    1> Do I need to create a ear file since i want both the ejb (under service folder) and war as reusable components. Whenever we have a EJB component do we always need to have an EAR file??
    2> Whats the best way to create the jar, war or ear file. I am facing great difficulty in deploying the war.Do we need to set any classpath before we create the war and jar files except for the deployment descriptors.I have created the ejb descriptors correctly through ejbc.
    3>I have kept struts.jar,log4j.jar under lib folder. However when i create the ear and try to deploy it under weblogic it deploys the war file but gives error in deploying the jar which has the ejb. I have aslo validated the jar using ejbc.
    It gives error indicating that it requires struts.jar in classpath. If we give the classpath of struts.jar at system leve the Application deploys with ease..Can anyone tell whats the error.The jar does not use any strust component .
    4>Also the valueobject which has some beans which are used to populate the jsp through Actionformbean. Is it ok if we give refrences in both ejb jar and war?
    ie while creating jar and war folder have the valueobject in both the files or will it lead to any errors..
    Thanks in Advance
    ....

    Yes, I have tried that. But, as the server is running and the jars are in use, it throws and EditFailedException

  • Explain about JAR,EAR and WAR files

    Explain :what is JAR,EAR and WAR files and how is useful in creating archive files in java with more example?

    Please look up this type of information on your own.
    http://java.sun.com/reference/glossary/index.html

  • Extracted ear/war/jar file location in JBoss

    How can I find out in runtime where JBoss extracted my ear/war/jar file?
    I have a file inside my ear/war/jar file and I need to know the location of the file. I know that it is in the tmp/deploy directory but I need the exact application temporary name.

    You can take out the common classes and bundle them in a jar library that can be bundled directly in APP-INF/lib (or library directory defined by <library-directory> in applicaton.xml if you are using JEE5 / WLS 10). Is it possible to do this re-arragement?

  • List the contents of jar, ear, war files

    Hi All,
    It has been several years since I have worked in java and now I am trying to get caught back up :-).
    My question is: Is there a standard utility that can dump/list the contents of the packaging files: jar, ear, war?
    Thanks in advance!

    You can use winzip. OR you can use the jar command provided in JDK.
    jar -tvf <<your archive (jar, war, ear)>>

  • Difference between .jar, .war and .ear file

    Hi,
    I am pretty new to J2EE technology.
    I would like to know what is the difference between .jar, .war and .ear files and how they are deployed on webserver.
    Thanks,

    Files with a .jar extension or JAR files, are essentially just a collection of files compressed using the ZIP/ZLIB compression format.
    JAR (short for Java Archive) files were introduced in the early days of Java as a means to conveniently package and distribute Java applications and components. Since then, a number of additions to the Java platform have followed suit. The introduction of the EAR file is one such addition.
    An EAR (Enterprise Archive) file is a JAR file that contains a J2EE application.
    A J2EE application is a group of Web modules that collectively perform as a single entity.
    A Web Module is an entity consisting of one or more resources such as HTML files, Java class files, XML files, etc. Web Modules are packaged in Web Archive (WAR) files.
    Looking at it from a top-down view, EAR files contain JAR files and WAR files. Packaging resources in WAR files, JAR files and eventually EAR files, makes it easy to reuse and reassemble components as new J2EE applications and distribute them to new environments.
    For example, Tomcat deals only with WAR files.
    So, in order to auto-deploy a Web application to a Tomcat environment, you must place an application's WAR file in the appropriate directory or use Tomcat's deployment tools to manually deploy the file.
    If you already have an EAR file that contains the WAR file, you can extract the WAR file and use it as is. If you do not have the EAR file or the WAR file, you can use any number of compliant tools to create the WAR file. Tomcat is a servlet/JSP container available from the jakarta.apache.org site.

  • War an ear deployment problem

    hi,
    I got a war and ear that share common classes. I would like to deploy both of them on the same application server.
    I started with weblogic and it worked fine.
    Now I am running it on Websphere - the problem is the ear application failed to start - it cant find one of it's property files even though it is in the class path.
    I see that the jar containing all the properties is in the class path - the application can access all other properties files except this one.
    The problematic properties file is my.commons.logging.properties which is a refactoring to the common.logging jar.
    I also see that if the war is not deployed - the ear is deployed without a problem.
    the war contains commons.logging.properties and because Websphere also had it's own common.logging i had to use "parent last" for the war deployment.
    If i change the load order of the applications(the ear is loaded first) - the properties file is found.
    I will be happy to hear any idea you got about this.
    I don�t understand how two different applications affect each other that way.
    Thanks!!!

    Sounds like a bug. You can report it to [email protected]
    -- Rob

  • Looking for a DAO\JDBC example to deploy as war or ear to see how it works

    looking for a DAO\JDBC example to deploy as war or ear to see how it works can any one show me i have searched it but cant find it...

    you should try searching in http://www.theserverside.com

  • Can't get WAR or EAR

    I had to reinstall RAD recently and put back in the Flex plug-in (4.1).  Then I wanted to export the WAR and EAR files, but not it isn't possible.
    When the Web | War selection is made, the next screen doens't have the application filled in and you can't enter it.  Same is true with the EAR export option.
    How do I get these to work?

    When I create a new project "Dynamic Web" I can get a WAR, but I can't get a Release Build.

  • Packaging JAR's using Ant in Eclipse

    Hey,
    I'm new to Ant, and xml for that matter. I need to rmi compile & package a set of simple classes whose objects call eachother remotely. I need seperate jars for a "server" and one for "client" containing whatever classes are needed for each. Using Ant the classes should be compiled, packaged into the jars and then the jars should be copied to some other specified directory. And of course, the jars should be executable.
    The files I use are AddressBook (interface extends Remote), AddressBookImpl (extends UnicastRemoteObject implements AddressBook), BuddyInfoInterf (interface extends Remote), BuddyInfo (the implementation, extends Unicast... implements BuddyI...), and AddressBookUser.
    The AddressBook is created on the server-side (in main() found in AddressBookImpl) and is populated with BuddyInfo's also created server-side.
    AddressBookUser is just the client accessing some info from ABook or BInfo.
    So, anyway, here's the xml file I've written to do the tasks assigned. The classes compile fine, and the jar files seem to contain the proper files. My problem is that the jar files don't execute properly. The main() in AddressBookImpl creates the ABook and binds it to the rmiregistry. When I run the server.jar that is "initially" created during the process (the one in the base dir) it works fine but this only seems to work correctly because it's in the same dir as all of the compiled classes. The copied jar file in the other directory, or even if I manually copy the server.jar file in the base dir to some other dir, causes an exception when trying to bind the AddressBook to the registry saying it can't find a stub that is definitely located in the jar. And I'm running the rmiregistry in whatever dir the server.jar is in each time:
    Exception in thread "main" java.rmi.ServerException: RemoteException occurred in
    server thread; nested exception is:
    java.rmi.UnmarshalException: error unmarshalling arguments; nested excep
    tion is:
    java.lang.ClassNotFoundException: AddressBookImpl_Stub
    at sun.rmi.server.....
    <?xml version="1.0"?>
    <project default="packaging">
    <!-- Change location(s) to desired path(s) where client and/or
    server jar files should be copied to, else will create folders
    "client" and "server" in project directory and copy them to
    there. -->
    <property name="serverDir" location="./server"/>
    <property name="clientDir" location="./client"/>
    <!-- performs all tasks -->
    <target name="packaging">
         <!-- Compiles all files in project directory. Necessary for
         AddressBookUser.java to be compiled -->
         <javac srcdir="."/>
         <!-- RMI compiles AddressBookImpl & BuddyInfo -->
         <rmic classname="AddressBookImpl" base="."/>
         <rmic classname="BuddyInfo" base="."/>
         <!-- Creates server jar file -->
         <jar destfile="./server.jar" basedir="." includes="**.class" excludes="AddressBookUser.**">
              <manifest>
                   <attribute name="Main-Class" value="AddressBookImpl"/>
                   <attribute name="Class-Path" value="."/>
              </manifest>
         </jar>
         <!-- Creates client jar file -->
         <jar destfile="./client.jar" basedir="." includes="**.class" excludes="AddressBookImpl.** BuddyInfo.** **Skel.class">
              <manifest>
                   <attribute name="Main-Class" value="AddressBookUser"/>
                   <attribute name="Class-Path" value="."/>
              </manifest>
         </jar>
         <!-- copy jar files to specified directories -->
         <copy file="./server.jar" todir="${serverDir}"/>
         <copy file="./client.jar" todir="${clientDir}"/>     
    </target>
    </project>
    Sorry bout the length. Just want to cover my bases. Thanks for any help.

    I am also having problem in building server.jar file using Ant. I am using EJB jar file in my web application, this jar file is called remotely from server to client. Client.jar file working correctly but the server.jar file contains error which is given below:
    15:30:47,296 WARN [verifier] EJB spec violation:
    Bean : Server
    Section: 22.2
    Warning: The Bean Provider must specify the fully-qualified name of the Java cla
    ss that implements the enterprise bean's business methods in the <ejb-class> ele
    ment.
    Info : Class not found on 'com.ejb.ServerBean': No ClassLoaders found for: com.ejb.ServerBean
    15:30:47,296 ERROR [MainDeployer] Could not create deployment: file:/C:/jboss-4.0.4.GA/server/default/deploy/server.jar
    org.jboss.deployment.DeploymentException: Verification of Enterprise Beans failed, see above for error messages.
    In above error, "Class not found on 'com.ejb.ServerBean' " is given. Will there be all the classes of EJB jar file in server.jar ? I think only the interface class file i.e. Server.class and serverHome.class must be included, am I correct or not?
    Also the build.xml which I am using for creating server.jar is given below:
    <project name="ServerEJB" default="make_server_jar" basedir=".">
    <!-- Initialization variables -->
    <property environment="env" />
    <property name="app.name" value="${ant.project.name}"/>
    <property name="source.dir" value="ejbModule"/>
    <property name="build.dir" value="build"/>
    <property name="classes.dir" value="${build.dir}/classes"/>
    <property name="distribution.dir" value="dist"/>
         <property name="server.ejb.jar.name" value="server.jar"/>
    <target name="clean" description="Deletes compiled and generated code">
    <delete dir="${build.dir}"/>
    </target>
    <target name="make_server_jar" depends="" description="Builds a server.jar with stubs for apps to use">
    <mkdir dir="${distribution.dir}" />
    <jar destfile="${distribution.dir}/${server.ejb.jar.name}" basedir="${classes.dir}">
         <exclude name="**/*Bean.class"/>
    </jar>
    </target>     
    </project>
    I am using server.jar file in server as interface which will remotely call client.jar which will be kept at client location.
    Anybody, can you provide me with the solution for this problem?...
    Thank you.

  • Help in understanding creation of a jar file

    Hi,
    Could anyone explain what this (in), (out), and (deflated ) and (stored) means wrt the creation of a jar
    For Ex:
    adding: com/(in = 0) (out= 0)(stored 0%)
    adding: com/test/(in = 0) (out= 0)(stored 0%)
    adding: com/test/teststubs/(in = 0) (out= 0)(stored 0%)
    adding: com/test/teststubs/TestLoader.class(in = 8029) (out= 4248)(deflated 47%)
    TIA

    I believe it's all about compression. "in" and "out" are the bytes added before and after compression. "deflated" is the compression method, and the percentage is the amount of compression achieved.
    The first three things added in your example are directories, so they weren't added directly; rather the ZIP mechanism for expressing file hierarchies was used (as opposed to actually adding the directory file from the disk).

  • Help in understanding the creation of a jar

    Hi,
    Could anyone explain what this (in), (out), and (deflated ) and (stored) means wrt the creation of a jar
    For Ex:
    adding: com/(in = 0) (out= 0)(stored 0%)
    adding: com/test/(in = 0) (out= 0)(stored 0%)
    adding: com/test/teststubs/(in = 0) (out= 0)(stored 0%)
    adding: com/test/teststubs/TestLoader.class(in = 8029) (out= 4248)(deflated 47%)
    TIA,
    Harsha

    Hi
    The link you specified links to the same post in the JARs section of the forum.
    Any pointer to the question is greatly appreciated.
    TIA

  • PAR , JAR ,EAR files

    hello all,
       1. what are  PAR,JAR,EAR  files and list some examples.  what is  their purpose each ?  and also one more question to ask (i.e)
       2. Difference between PAR JAR and EAR file and where is each one used ?

    Hi
    PAR - An archive file containing all resources of a portal application.
    You can know more about the files in PAR is here
    http://help.sap.com/saphelp_nw2004s/helpdata/en/e3/fab74247e2b611e10000000a155106/frameset.htm
    EAR -Enterprise Archive Files,A file type that contains a Web-based application for companies.
    From a technical viewpoint, an EAR file is an archive of MIME type "application/zip" and can be extracted with any pack program. It always contains a file in which all of the components belonging to the archive are described. Further applications are necessary to enable the correct implementation of the applications contained in the archive after extraction.
    JAR -Java ARchive. A file type that contains an EJB application developed according to the J2EE standard, or an archive of Java class files.
    Cheers
    Jawahar Govindaraj
    PS:Reward pts

Maybe you are looking for