How can I create WEB-INF/classes in war when I don't have anyone?
In my war I have only web.xml.
I need this because jboss. It cannot deploy project without this folder.
I need gradle configuration.
Add a fake text file to src/main/resources, and it will end up in WEB-INF/classes. Explain the purpose of this file by writing it in the file.
Suppose I have a project with CDI and beans.xml that have dependency to secondary project that is packaged in some.jar file. In some.jar there is beans.xml too. How they merged after I compile and deploy the main project (in war file)? Can I write only one xml for main project or I must have several separate beans.xml for main and secondary projects?
As described in the documentation each module, jar or war that contains CDI beans in WEB-INF/classes should have beans.xml in order to be processed.
No, you cannot write only one xml for the main project (if by project you mean a war) and by secondary projects you mean jar modules.
I am trying to create an EAR file from the command prompt. I have used
jar -cvf myServletWAR.ear .
But my question is, how can I get this EAR file to have WAR files and JAR files inside it?
Do I need to create the war file separately and include in the ear file?
I can't use the ANT file for this, as there are few restrictions on this project.
One of my EAR files has structure as follows:
app.ear
- APP-INF
- lib
// libraries (.jar) here
- META-INF
- MANIFEST.MF
- weblogic-application.xml
- module1.war
- customlib.jar
This archive is being deployed onto WebLogic 10.3.
Remeber .ear is just a ZIP file, so you can always create it this way, although it seems messy.
check if jar cmd is working if so, create the jar of your class files and descriptors etc.
After that jar -cvf <<earname>> <<files want to be in the ear >>
Could you try this :
jar -xvf myServletWAR.ear
You could also refer to :
How to add a WAR file into an existent EAR file? and how to I have two .war files within one .ear file?
You would have to add these EAR file references in the application.xml of the ear file.
If you have generated a client and EJB together, they are automatically packaged into an enterprise archive file (.ear) and you do not need to do this. Otherwise:
Package the EJB's .jar file into an .ear for your application. To do
this use a jar command similar to the following:
jar -cvf myApplication .ear myService.jar
If you have a client .war file you can add that to the .ear file in the same way.
Create a deployment descriptor application.xml either using your
application server's tools or by copying and editing a sample, as
follows:
Locate a sample .ear, which is in examples directory in
mapdemo/mapdemo/repos/myService.deploy/JMapServ-WL.ear
Extract the descriptor application.xml from the .ear file, using the following jar command:
jar -xvf JMapServ-WL.ear META-INF/application.xml
Make a copy of the application.xml descriptor and edit it, replacing JMapServ with the name of your .jar file. You can also add the name of your .war file if you added that to the .ear file.
Put the descriptor in the meta-inf subdirectory of the directory containing your .ear file.
Package the descriptor into your .ear file using a jar command similar to:
jar -uvf myService.ear META-INF/application.xml
If you want to create an ear from the command line, following are the options that you can try.
Option 1. Using an ant build and use the ear task. Configure this ear task as stated in stackoverflow question on ant ear task usage
Note: Maven based build is preferred over ant these days.
Option 2. If you can use maven, configure your modules and use maven ear plugin to generate an ear. The below command will be able to generate the ear.
mvn clean package
Refer to the maven question regarding a Java EE project for more information on configuring war, jars for an ear.
.jar file into an .ear
jar -cvf myApplication.ear myService.jar
.war file you can add that to the .ear file in the same way.
Refer http://supportline.microfocus.com/Documentation/books/sx51/thdpoy10.htm
I would like to get a help from you all. The below is the issue I am currently facing with.
I have added a reference of WAR shared library in weblogic-application.xml of EAR file.
In EAR, I do have a ejb module which has "library-directory" tag in application.xml. I want ejb module to refer jar files in shared library but it looks for jar files in lib folder of EAR.
In lib folder of EAR, jar files are not available but the jars are available in WAR shared library.
How to resolve this issue and make the ejb module of EAR refer the jars of WAR shared library.
Please add a comment if the problem is not completely understandable.
Many thanks in advance for your help!
Try defining the jars you need as modules in application.xml. Something like:
<module>
<java>pathToWarLib/needed.jar</java>
</module>
folks,
i understand this is a silly question... bt i am so new to glassfish...
i have got an ear to deploy to deploy in glassfish 3. the ear has a jar and war inside already. the jar is a JPA jar and it has persistence.xml file. i have added a jar-file entry to load inside the persistence.xml file, with a jar entry which is not in the ear to be deployed. Where should i put the jar for glassfish to load it
( i have tried putting it in all lib folders in the glassfish dir and even inside various places in the ear only. there is something with lazy deployment i guess... so please suggest me a way to somehow solve this.)
thank for your time,
rajan
okay, what i did was created a lib folder inside the ear, put the additional jar there and in the persistence.xml file inside the ejb jar, i had set the jar-file value as lib/jarname and it recognized...
thanks for yure time guys...
rajan...