aspose file tools*
The moose likes BEA/Weblogic and the fly likes help please--URGENT!!!   deploying an EJB component Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Products » BEA/Weblogic
Bookmark "help please--URGENT!!!   deploying an EJB component" Watch "help please--URGENT!!!   deploying an EJB component" New topic
Author

help please--URGENT!!! deploying an EJB component

deepa karkala
Ranch Hand

Joined: Jan 29, 2003
Posts: 62
Hi everyone,
I am trying to deploy an EJB (TestEJB, remote interface is Test) component into weblogic 6.1. All the files related to TestEJB are in the package com.myApplication.test.
In the config.xml, the tag
<Application Deployed="true" Name="Test" Path=".\config\mydomain\applications\test">
<EJBComponent Name="test" Targets="server1" URI="test.jar"/>
</Application>
is written only once. Initially first time when I start the weblogic server, the test.jar will be deployed successfully without any error. When I stop the server and check the config file, there will be two <Application> tags for test.jar. I do not know how this tag is added once again.
So when I restart the server now , I get the following error :
Unable to deploy EJB: Test from test.jar:
Unable to bind a cluster-aware stateless session EJBObject to the name: ejb.com.
myApplication.test_EO. Please ensure that the jndi-name in the weblogic-ejb-jar.x
ml is correct. The error was:
javax.naming.NameAlreadyBoundException: Can't rebind anything but a replica-aware stub to a name that is currently bound to a replica-aware stub; remaining name
� �
<<no stack trace available>>

>
<Nov 11, 2003 1:49:21 PM EST> <Error> <Management> <Error deploying application
.\config\mydomain\applications\test: java.lang.reflect.UndeclaredThrowableExcept
ion>
Again when I start the server, one more <Application> tag will added for test.jar. Very weird !!!
I do not know why this <Application> tag for the componet test.jar is getting added each time when I start the server. How to avoid it ?
Only first time when I start the weblogic server, I do not get this error because there will be only one tag in the config file. But when I stop the server, the config.xml will be updated with one additional <Application> tag for test.jar. This keeps repeated each time when I restart the weblogic server.

Please suggest me how to get rid of this tag getting added repeatedly to the config.xml.
My weblogic-ejb-jar.xml for test.jar :
<!DOCTYPE weblogic-ejb-jar PUBLIC '-//BEA Systems, Inc.//DTD WebLogic 6.0.0 EJB//EN' 'http://www.bea.com/servers/wls600/dtd/weblogic-ejb-jar.dtd'>

<!-- Generated XML! -->
<weblogic-ejb-jar>
<weblogic-enterprise-bean>
<ejb-name>Test</ejb-name>
<stateless-session-descriptor>
<pool>
</pool>
<stateless-clustering>
</stateless-clustering>
</stateless-session-descriptor>
<transaction-descriptor>
<trans-timeout-seconds>30</trans-timeout-seconds>
</transaction-descriptor>
<reference-descriptor>
<resource-description>
<res-ref-name>jdbc/test</res-ref-name>
<jndi-name>test</jndi-name>
</resource-description>
</reference-descriptor>
<jndi-name>ejb.com.myApplication.test</jndi-name>
</weblogic-enterprise-bean>
</weblogic-ejb-jar>
Thanks and regards.
Ashish Pagare
Ranch Hand

Joined: Oct 14, 2003
Posts: 101
A quick advice will be to remove the
<stateless-clustering>
</stateless-clustering>
nodes from the deployment descriptor. Some times empty nodes can also create some problems.
Change
<pool>
</pool>
to
<pool>
<max-beans-in-free-pool>5</max-beans-in-free-pool>
<initial-beans-in-free-pool>1</initial-beans-in-free-pool>
</pool>
HTH.
deepa karkala
Ranch Hand

Joined: Jan 29, 2003
Posts: 62
Hi Ashish, I did the changes you suggested. Still it is giving me the error :
Unable to deploy EJB: Test from test.jar:
Unable to bind a cluster-aware stateless session EJBObject to the name: ejb.com.
myApplication.test_EO. Please ensure that the jndi-name in the weblogic-ejb-jar.x
ml is correct. The error was:
javax.naming.NameAlreadyBoundException: Can't rebind anything but a replica-aware stub to a name that is currently bound to a replica-aware stub; remaining name
� �
<<no stack trace available>>
>
<Nov 11, 2003 1:49:21 PM EST> <Error> <Management> <Error deploying application
.\config\mydomain\applications\test: java.lang.reflect.UndeclaredThrowableExcept
ion>

However, I completely removed the tag <Application> for the test.jar and started the server. There is no such error and the application test.jar is successfully deployed.
But again when I stop the server, it is adding this flag <Application> for the test.jar. If I leave it as it is, one fine day there will be plenty of this tag <Application> for the test.jar in my config.xml.

I do not know how to avoid this.
thanks.
Ashish Pagare
Ranch Hand

Joined: Oct 14, 2003
Posts: 101
Hi,
I am not what's wrong with this however we can try some more things.
I believe you are manually deleting application node from config.xml. First of all I would never modify config.xml manually.
I am not sure whether you have clustered environment or just a standalone weblogic server. So my advice is for scenario where you have just one weblogic server. Delete this EJB from the weblogic console and redeploy it one more time. I guess even after making some modification weblogic is picking the previuos deployment descriptor entries and complaning for cluster aware stubs, which normally you will never encounter in a stand alone weblogic server.
Which version of weblogic are you on?
Let me know your findings.
deepa karkala
Ranch Hand

Joined: Jan 29, 2003
Posts: 62
Hi Ashish, as u said, i went to the console, deleted the ejb componet test.jar from EJB node which automatically deleted the application entry related to test.jar from Applications node in the weblogic console.
Then I stopped the server from the console itself. Funny thing is , again when I looked at config.xml, it is adding this <Application> tag for test.jar.
I am using weblogic 6.1
I guess, the undeploying test.jar from the server through the console is not happenning properly.
May be i have to use command level undeploy command to undeploy test.jar ?
Let me try that also.
Note : only when u stop the server from console, the tag <Application> is getting added to the config.xml for test.jar.
If I press ctrl+c at the weblogic instance (dos window), this tag is not getting added.
But i guess always it is better to stop the server from the console right ?
thanks.
Ashish Pagare
Ranch Hand

Joined: Oct 14, 2003
Posts: 101
Under your domain directory find folders with name .wlnotdelete_*** and delete them all. Though this is not a clean approach but this is our lst resort. Stopping/Delete from console is the correct way but sometime it doesn't help.
If you have deleted ejb from console then it should never get added in config.xml or display in console. WL is surely caching it some where.
Ctrl+C wil actually kill the server so I guess that's the reason you dont get it.
deepa karkala
Ranch Hand

Joined: Jan 29, 2003
Posts: 62
Hi Ashish, there is no dir such as .wlnotdelete_*** anywhere under my domain dir.
I also noticed that when I delete EJB component test from the console, it displays the message that it is deleted. But when I click EJB node under Deployments, again test.jar will appear in the right side list.

Now what I did is, I completely replaced the tag
<Application Deployed="true" Name="test" Path=".\config\mydomain\applications\test">
<EJBComponent Name="ejb/test" Targets="appdev" URI="test.jar"/>
</Application>


with the following:
<Application Deployed="true" Name="ejb/Test" Path=".\config\mydomain\applications\Test\ejb">
<EJBComponent Name="ejb/test" Targets="appdev" URI="test.jar"/>
</Application>

and before starting the server, I kept the test.jar in c:\bea\wlserver6.1\config\mydomain\applications\Test\ejb.
Now it is not keep adding the tag to the config.xml as it was doing for previous tag.
Hence i am not getting the error "javax.naming.NameAlreadyBoundException: Can't rebind ...... "
Though I am not happy, it's ok that i can proceed further rather than getting stuck.
Finally I would like to thank you very much for your company with your sportive suggestions throughout this session.
 
With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime.
 
subject: help please--URGENT!!! deploying an EJB component