Solved

Deploying an ear application without unpacking it...

Posted on 2002-03-12
7
1,059 Views
Last Modified: 2013-12-10
Dear all,


I have an application sitting in the auto deploying ./applications/ directory on a domain.


The domain name is "generic".


The directory tree is:

./config/generic/applications/
./config/generic/applications/.wl_temp_do_not_delete/
./config/generic/applications/DefaultWebApp_genericServer/
./config/generic/applications/generic-web-app/
./config/generic/applications/generic-web-app/generic-web-app.ear


After unpacking the generic-web-app.ear file, the directory now contains:

./config/generic/applications/generic-web-app/generic-web-app.ear
./config/generic/applications/generic-web-app/META-INF/
./config/generic/applications/generic-web-app/generic-web-app.war


After unpacking the generic-web-app.war file, the directory now contains:

./config/generic/applications/generic-web-app/META-INF/
./config/generic/applications/generic-web-app/WEB-INF/
./config/generic/applications/generic-web-app/generic-web-app.ear
./config/generic/applications/generic-web-app/generic-web-app.war
./config/generic/applications/generic-web-app/html/
./config/generic/applications/generic-web-app/index.html
./config/generic/applications/generic-web-app/javadoc/
./config/generic/applications/generic-web-app/jsp/


At first I do not unpack the jar files.


When starting bea weblogic 6.0 I get the following message:

<Error> <HTTP> <[HTTP genericServer] Could not find Web application
"/mnt/windows/bea/wlserver6.0/./config/generic/applications/.wl_temp_do_not_delete/wl_local_comp4571.war"
java.io.FileNotFoundException: WEB-INF/web.xml XML file not found in jar file


Every time weblogic is started, it creates a temporary file, like the file .wl_temp_do_not_delete/wl_local_comp4571.war.
But in my case, it creates the file .wl_temp_do_not_delete/wl_local_comp4572.war.
And it references the file wl_local_comp4571.war.
You can see a difference in the two numbers.


The exact number doesn't matter very much (here 4571 and 4572).
The fact is that whatever the number generated, the number referenced (here 4571)
is different of the number in the file (here 4572).


There seems to be a problem with the numbering scheme for this temporary file...


This problem and its related message occurs only if the .ear file is not unpacked.


Now if I unpack the generic-web-app.ear file in the applications/generic-web-app/ directory,
and if I also unpack the generic-web-app.war file int the applications/generic-web-app/ directory,
then I don't get this previous message and weblogic starts fine.
I can then run my application without any problems, JSP pages are displayed, custom tags work fine.


But if I don't unpack the generic-web-app.ear file, I get the error message.


If I unpack the generic-web-app.ear file but do not unpack the generic-web-app.war file, then I get the following message:

<Feb 10, 2002 2:27:06 AM GMT+00:00> <Info> <Logging> <Only log messages of severity "Error" or worse will be displayed in this window. This can be changed at Admin Console> generic> Servers> genericServer> Logging> Debugging> Stdout severity threshold>
javax.xml.parsers.FactoryConfigurationError: java.lang.ClassNotFoundException: weblogic.xml.jaxp.RegistrySAXParserFactory
        at javax.xml.parsers.SAXParserFactory.newInstance(SAXParserFactory.java:150)


So as I said, by just unpacking the two jar files, and not moving any files, everything works fine.
It's like weblogic cannot unpack correctly automatically the jar files of the application.
Strange.


Here is my classpath:

export BEA_HOME=/mnt/windows/bea
export WL_HOME=$BEA_HOME/wlserver6.0


CLASSPATH=$JAVA_HOME/lib/tools.jar
CLASSPATH=$CLASSPATH:$BEA_HOME
CLASSPATH=$CLASSPATH:$WL_HOME/lib/ejb20.jar
CLASSPATH=$CLASSPATH:$WL_HOME/lib/jms450.jar
CLASSPATH=$CLASSPATH:$WL_HOME/lib/jms451.jar
CLASSPATH=$CLASSPATH:$WL_HOME/lib/jms500.jar
CLASSPATH=$CLASSPATH:$WL_HOME/lib/jms510.jar
CLASSPATH=$CLASSPATH:$WL_HOME/lib/weblogic.jar
CLASSPATH=$CLASSPATH:$WL_HOME/lib/weblogic_sp.jar
CLASSPATH=$CLASSPATH:$WL_HOME/lib/weblogic_sp0.jar
CLASSPATH=$CLASSPATH:$WL_HOME/lib/wleorb.jar
CLASSPATH=$CLASSPATH:$WL_HOME/lib/xmlx.jar
CLASSPATH=$CLASSPATH:$WL_HOME/lib/zac.jar
CLASSPATH=$CLASSPATH:$WL_HOME/samples/eval/cloudscape/lib/cloudscape.jar
CLASSPATH=$CLASSPATH:$CLIENT_CLASSES:$SERVER_CLASSES
CLASSPATH=$CLASSPATH:$EX_WEBAPP_CLASSES
export CLASSPATH


Here is how I start the server:

$JAVA_HOME/bin/java -hotspot \
    -ms64m -mx64m \
    -classpath $CLASSPATH \
    -Dweblogic.RootDirectory=/mnt/windows/bea/wlserver6.0 \
    -Dbea.home=/mnt/windows/bea \
    -Djava.security.policy=/mnt/windows/bea/wlserver6.0/lib/weblogic.policy \
    -Dweblogic.Domain=generic \
    -Dweblogic.Name=genericServer \
    weblogic.Server \
    -Dweblogic.management.password=mypassword &


Here is the config.xml file:

<Domain
  Name="generic"
  >
 
  <Server
    Name="genericServer"
    ListenPort="7001"
    AcceptBacklog="50"
    AdministrationPort="0"
    ClusterWeight="1"
    ConsoleInputEnabled="false"
    DGCIdlePeriodsUntilTimeout="2"
    DefaultProtocol="t3"
    DefaultSecureProtocol="t3s"
    ExecuteQueues=""
    HttpdEnabled="true"
    JavaCompiler="/usr/local/jdk1.3.1/bin/javac"
    SocketReaderTimeoutMaxMillis="10"
    NativeIOEnabled="true"
    TransactionLogFilePrefix="./config/generic/logs/"
    TunnelingClientPingSecs="45"
    TunnelingClientTimeoutDebuggingEnabled="false"
    TunnelingClientTimeoutSecs="40"
    XMLRegistry="genericXMLRegistry"
    >
 
    <WebServer
      DefaultWebApp="DefaultWebApp_genericServer"
      LogFileName="./config/generic/logs/access.log"
      LoggingEnabled="true"
      Name="genericServer"
    />
 
    <Log
      FileName="./config/generic/logs/weblogic.log"
    />
 
  </Server>

  <Application
    Deployed="true"
    Name="DefaultWebApp_genericServer"
    Path="config/generic/applications"
    >
 
    <WebAppComponent
      Name="DefaultWebApp_genericServer"
      Targets="genericServer"
      URI="DefaultWebApp_genericServer"
    />
 
  </Application>

  <Application
    Deployed="true"
    Name="generic-web-app"
    Path="config/generic/applications/generic-web-app"
    >
 
    <WebAppComponent
      Name="generic-web-app"
      Targets="genericServer"
      URI="generic-web-app.ear"
    />
 
  </Application>


Here is the ./config/generic/applications/generic-web-app/META-INF/application.xml file

<application>
 
  <display-name>The generic web-application</display-name>
 
  <module>
    <web>
      <web-uri>generic-web-app.war</web-uri>
      <context-root>/</context-root>
    </web>
  </module>
 
  <security-role>
    <role-name>users</role-name>
  </security-role>
 
</application>




Any idea?
Stephane
stephaneeybert@hotmail.com

0
Comment
Question by:stephaneeybert
  • 3
  • 2
  • 2
7 Comments
 
LVL 1

Expert Comment

by:pepenieto
Comment Utility
I don´t know if the problem is the same, but if this were usefull...

I have sometimes some deploy problems. For a correct redeploy I do the next:
 - Shut down the server.
 - Remove the <wl_temp_do_not_delete> directory (yes, has no reason)
 - Open the config.xml file.
 - Remove the <application> entry for the jar, war, ear I want to undeploy (generic-web-app.ear in your case)
 - Remove the generic-web-app.ear file.
 - Start up your server
 - Open the console
 - Go to <application> menu
 - Click in <install a new application>
 - Navigate to your ear

When I deploy this way, it works fine.

Good luck
0
 

Author Comment

by:stephaneeybert
Comment Utility
Maybe it could work, but I cannot stop and restart my server every time I make a slight modification in the code. I would need the auto deploy mechanism working.
Cheers anyway!
0
 
LVL 1

Expert Comment

by:pepenieto
Comment Utility
When you build your .ear, do you build it into the <./config/generic/applications/generic-web-app/> directory?

I´ve seen sometimes that (for example) the .jar (or .ear) is being built, weblogic tries to redeploing before the .ear is complete, and this causes a bad deploy.

The best solution (it´s not necessary to shut down your server) is make the .ear in other directory and deploy it using the console.

Good luck
0
IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 

Author Comment

by:stephaneeybert
Comment Utility
Hi,

I build it in another directory and then copy it into the deployment directory.

Cheers for the comment.

Stephane
0
 
LVL 1

Expert Comment

by:Moondancer
Comment Utility
ADMINISTRATION WILL BE CONTACTING YOU SHORTLY.  Moderators Computer101 or Netminder will return to finalize these if still open in seven days.  Please post closing recommendations before that time.

Question(s) below appears to have been abandoned. Your options are:
 
1. Accept a Comment As Answer (use the button next to the Expert's name).
2. Close the question if the information was not useful to you, but may help others. You must tell the participants why you wish to do this, and allow for Expert response.  This choice will include a refund to you, and will move this question to our PAQ (Previously Asked Question) database.  If you found information outside this question thread, please add it.
3. Ask Community Support to help split points between participating experts, or just comment here with details and we'll respond with the process.
4. Delete the question (if it has no potential value for others).
   --> Post comments for expert of your intention to delete and why
   --> You cannot delete a question with comments, special handling by a Moderator is required.

For special handling needs, please post a zero point question in the link below and include the URL (question QID/link) that it regards with details.
http://www.experts-exchange.com/jsp/qList.jsp?ta=commspt
 
Please click the Help Desk link on the left for Member Guidelines, Member Agreement and the Question/Answer process for further information, if needed.  http://www.experts-exchange.com/jsp/cmtyHelpDesk.jsp

Click you Member Profile to view your question history and keep them all current with updates as the collaboration effort continues, to track all your open and locked questions at this site.  If you are an EE Pro user, use the Power Search option to find them.  Anytime you have questions which are LOCKED with a Proposed Answer but does not serve your needs, please reject it and add comments as to why.  In addition, when you do grade the question, if the grade is less than an A, please add a comment as to why.  This helps all involved, as well as future persons who may access this item in the future to seek help.

To view your open questions, please click the following link(s) and keep them all current with updates.
http://www.experts-exchange.com/questions/Q.20143599.html
http://www.experts-exchange.com/questions/Q.20235002.html
http://www.experts-exchange.com/questions/Q.20270154.html
http://www.experts-exchange.com/questions/Q.20275749.html
http://www.experts-exchange.com/questions/Q.20276318.html
http://www.experts-exchange.com/questions/Q.20280895.html
http://www.experts-exchange.com/questions/Q.20280896.html




PLEASE DO NOT AWARD THE POINTS TO ME.  
 
------------>  EXPERTS:  Please leave any comments regarding your closing recommendations if this item remains inactive another seven (7) days.  Also, if you are interested in the cleanup effort, please click this link http://www.experts-exchange.com/jsp/qManageQuestion.jsp?ta=commspt&qid=20274643

Moderators will finalize this question if still open in 7 days, by either moving this to the PAQ (Previously Asked Questions) at zero points, deleting it or awarding expert(s) when recommendations are made, or an independent determination can be made.  Expert input is always appreciated to determine the fair outcome.
 
Thank you everyone.
 
Moondancer
Moderator @ Experts Exchange
0
 
LVL 1

Accepted Solution

by:
Moondancer earned 0 total points
Comment Utility
No additional assistance provided.  50 points refunded, this item closed by moving it to our PAQ at zero points.  If the need still exists, you may benefit by posting this new and drawing current attention in this high-volume topic area.

Moondancer - EE Moderator
0
 

Author Comment

by:stephaneeybert
Comment Utility
Ok
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

Verbose logging is used to diagnose garbage collector problems. By default, -verbose:gc output is written to either native_stderr.log or native_stdout.log.   It is also possible to redirect the logs to a user-specified file. This article will de…
This exercise is about for the following scenario: Dmgr and One node with 2 application server. Each application server contains it owns application. Application server name as follows server1 contains app1 server2 contains app1 Prereq…
In this seventh video of the Xpdf series, we discuss and demonstrate the PDFfonts utility, which lists all the fonts used in a PDF file. It does this via a command line interface, making it suitable for use in programs, scripts, batch files — any pl…
This tutorial demonstrates a quick way of adding group price to multiple Magento products.

772 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now