Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Deployment order

Status
Not open for further replies.

ZePAG

Programmer
Dec 31, 2000
21
BE
Hello BEA users! :eek:)

I have a problem with a Session EJB (EJB 2.0) in WLS 6.1.
My application is an .ear which contains .war, and .jar (EJBs)
When I start my blank Weblogic Server (no apps, "newly installed") One Session EJB won't be deployed...
It seems it depends on another EJB to be deployed...
Indeed when I deploy it with WLS6.1's console, everything is OK.
So I guess that by changing the deployment order in order to have this EJB deploying after the ones it depends on, everything will be once again OK.

But I can't find anything in EJB descriptors (neither ejb-jar.xml nor weblogic-ejb-jar.xml) about deployment order...

Anybody knows about this?

Thanks in advance

ZePaG
"Garder courage est vital, en montrer est essentiel"
 
Deployment Order can be controlled from the WebLogic Console. Bring up the ejbs (I assume they are deployed as separate jars), click on the offending ejb. It's deployment order number will probably be the default of 1000. Bump up that number to anything above 1000 and clean shutdown the server. Now everything should deploy nicely.
 
Your other option is to specify dependencies in the manifest of the offending EJB. This is actually the recommended solution for J2EE 1.3 but is not as easy as just using the WL Console.
 
Sorry but it seems none of these solutions will do it...
1st solution :
I don't want to do it from the console, I won't deploy it myself so I want my ear to "do the job by itself" with no other things to do...
2nd solution :
I already tried it, it won't work...
Even if it's recommended.
It seems that WL deploys them every which way until you patch it with SP2...

 
Hi

I have had the same problem. However, deployment order is not something that you can specify. I have an automated build environment that dumps the EAR file containing sessions and entity EJBs into the hot deploy directory. From what I can see the only way to get everything to deploy correctly is to go into the specific domain server's config.xml file and manually enter somthing like:
<Application Deployed=&quot;true&quot; Name=&quot;WLI&quot; Path=&quot;e:\bea\wlintegration2.1\lib&quot;>
<EJBComponent DeploymentOrder=&quot;2&quot; Name=&quot;wlpi-master-ejb.jar&quot;
Targets=&quot;myserver&quot; URI=&quot;wlpi-master-ejb.jar&quot;/>
<EJBComponent DeploymentOrder=&quot;10&quot;
Name=&quot;generateinvoicebean.jar&quot; Targets=&quot;myserver&quot; URI=&quot;generateinvoicebean.jar&quot;/>
<WebAppComponent Name=&quot;b2bconsole&quot; ServletReloadCheckSecs=&quot;1&quot;
Targets=&quot;myserver&quot; URI=&quot;b2bconsole.war&quot;/>
<EJBComponent DeploymentOrder=&quot;3&quot; Name=&quot;wlpi-mdb-ejb.jar&quot;
Targets=&quot;myserver&quot; URI=&quot;wlpi-mdb-ejb.jar&quot;/>
<EJBComponent DeploymentOrder=&quot;10&quot; Name=&quot;inventorybean.jar&quot;
Targets=&quot;myserver&quot; URI=&quot;inventorybean.jar&quot;/>
<EJBComponent DeploymentOrder=&quot;0&quot; Name=&quot;repository-ejb.jar&quot;
Targets=&quot;myserver&quot; URI=&quot;repository-ejb.jar&quot;/>
</Application>

You'll only have to enter this once for each EJB you deploy.
Hope this helps. If you find a way of automatically doing it let me know!

Mik
 
Hi and thanx for your reply...

I'm sorry I couldn't post this before but here is something that might be helpful to you in the future.
I learned from a BEA Consultant that the proper way to use EJBs and then to manage them easily is to put all of them in the same EJB Jar.
This way you can deploy them in the order they appear in the ejb-jar.xml descriptor...
Thus you can manage them easily and deploy/undeploy them in a clean fashion.
By the way you then only have one descriptor to edit.

See you on the forum(s)... <:)o)>

 
As another follow-up note...the Orion application server does deployment order automatically. As soon as WLS sees an ejb-link (for example) it should know that this is a possible reference to an EJB that has not been loaded, read in the remaining EJBs for the application, and then tell the admin if there's a problem.[neutral]
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top