Bug in WLS 9.1 clustering?
I am in the process of testing WLS 9.1, and I'm seeing some strange behavior in a clustered environment. Since we are only in development, I've been performing in-place redeployments for the various EARs that we're testing. Sometimes this works fine, but other times it appears to corrupt the deployment on one of the managed servers. If I look at the server logs I can see that the applications are being redeployed on both managed servers, but when I look at the actual application logs it appears that the MDBs on one of the servers are not getting destroyed and recreated properly. As a result, when we attempt to perform some processing and a JMS message happens to go to the "corrupted" server, strange "NoClassDefFoundError" exceptions and other errors are thrown. However, the EAR seems to work properly on the other managed server as well as on my local machine so I know that there is no problem with it. This only happens sporadically; I cannot recreate it "on demand". Is this a bug? (By the way, we had no trouble running our cluster in WLS 9.0 so I assume that the cluster configuration is not the problem.)
Regards,
Sabrina
I have a similar problem with WLS 9.1. When I deploy an ear file, i can see the login page, but, when I login it throws an error saying "internal server error". When I check my stage folder, entire ear file is copied there, its not expanded. I dont have any problem with 9.0. Is this a bug in 9.1?
when i deploy a .war file it says "Cannot set web app root system property when WAR file is not expanded". but, when i expand it and deploy, it works fine.
I have already opened a case on this. I did not get any response from BEA. Its urgent for us. Did anyone of you solve this issue. If yes, please let me know the resolution.
I really appreciate any help on this.
Thanks a bunch
Sarat
Similar Messages
-
Serialization Exception with a MailSession in a WLS 9.1 Clusterred Env.
I have a WLS 9.1 cluster of 2 machines. My EJB's are targetted to both
machines in the cluster, and I have a single WLS MailSession that is
targetted to both machines in the cluster.
One of the EJB's is responsible for sending emails. Every so often I get a
NotSerializableException when the EJB looksup the mail session. After some
diagnosis it appears that every once in a while the JNDI lookup for the mail
session returns the MailSession from the opposite machine in the cluster:
IE: the EJB running on server 1, gets the MailSession from server 2, and
vice-versa.
When the same EJB is running in a non clustered env, there are no problems.
And the problem in the cluster is intermittent - sometimes the lookup
succeeds and the EJB gets a handle to the local MailSession object, and
sometimes it fails.
Has anyone else experienced this problem? Is this a known problem? If so,
are there any patches for it?
Thanks,
Brett
The exception is:
javax.naming.ConfigurationException [Root exception is
java.rmi.MarshalException: error marshalling return; nested exception is: \n
java
.io.NotSerializableException: javax.mail.Session]\n at
weblogic.jndi.internal.ExceptionTranslator.toNamingException(ExceptionTra
nslator.java:46)\n at
weblogic.jndi.internal.ExceptionTranslator.toNamingException(ExceptionTranslator.java:78)\n
at weblogic.
jndi.internal.WLContextImpl.translateException(WLContextImpl.java:421)\n at
weblogic.jndi.internal.WLContextImpl.lookup(WLCon
textImpl.java:377)\n at
weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:362)\n at
javax.naming.InitialConte
xt.lookup(InitialContext.java:351)\n at
com.certapay.ejb.Mailer.send(Mailer.java:55)I am having exact same problem (albeit accessing the mail session through spring wrapper). Has anyone got this to work? If not, looks liek a bug in BEA :-).
Anuj -
Error when ejb deployment in WLS 9.1 clustered environment
Hello,
We have a WLS 9.1 cluster consisting of one admin server and two managed servers. we are deploying ejb jar,It is succeed on the first managed server but fail on the second managed server. The admin console and for the second managed server contains the following log(below given). I checked the classpath of two managed servers, It is same in two servers. when i restarted the two managed servers, application is in active state but not running in second managed sever complining for one ejb class that the jndi-name in the weblogic-ejb-jar.xml is not correct. If it is not correct it should not run in first managed server also right.
please help me whether Am I doing something wrong or is this a bug?
below given the log when i deployed the ejb.
####<May 18, 2007 9:49:22 AM GMT> <Error> <Deployer> <tool2> <[ACTIVE] ExecuteThread: '5' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1179481762802> <BEA-149265> <Failure occured in the execution of deployment request with ID '1179481757718' for task '8'. Error is: 'java.lang.AssertionError: Assertion violated'
java.lang.AssertionError: Assertion violated
at weblogic.utils.Debug.assertion(Debug.java:57)
at weblogic.cluster.migration.MigrationManager.unregister(MigrationManager.java:246)
at weblogic.ejb.container.deployer.MessageDrivenBeanInfoImpl.onUndeploy(MessageDrivenBeanInfoImpl.java:999)
at weblogic.ejb.container.manager.BaseEJBManager.undeploy(BaseEJBManager.java:467)
at weblogic.ejb.container.manager.MessageDrivenManager.undeploy(MessageDrivenManager.java:570)
at weblogic.ejb.container.deployer.EJBDeployer.deactivate(EJBDeployer.java:1817)
at weblogic.ejb.container.deployer.EJBModule.doDeactivate(EJBModule.java:1041)
at weblogic.ejb.container.deployer.EJBModule.activate(EJBModule.java:420)
at weblogic.application.internal.flow.ModuleListenerInvoker.activate(ModuleListenerInvoker.java:104)
at weblogic.application.internal.flow.DeploymentCallbackFlow$2.next(DeploymentCallbackFlow.java:339)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
at weblogic.application.internal.flow.DeploymentCallbackFlow.activate(DeploymentCallbackFlow.java:68)
at weblogic.application.internal.flow.DeploymentCallbackFlow.activate(DeploymentCallbackFlow.java:60)
at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:640)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:252)
at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:154)
at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:80)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:567)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.activateDeployment(ActivateOperation.java:131)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:101)
at weblogic.deploy.internal.targetserver.operations.StartOperation.doCommit(StartOperation.java:126)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:329)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:845)
at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1246)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:432)
at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:161)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:181)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:12)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:67)
at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:179)
java.lang.AssertionError: Assertion violated
at weblogic.utils.Debug.assertion(Debug.java:57)
at weblogic.cluster.migration.MigrationManager.unregister(MigrationManager.java:246)
at weblogic.ejb.container.deployer.MessageDrivenBeanInfoImpl.onUndeploy(MessageDrivenBeanInfoImpl.java:999)
at weblogic.ejb.container.manager.BaseEJBManager.undeploy(BaseEJBManager.java:467)
at weblogic.ejb.container.manager.MessageDrivenManager.undeploy(MessageDrivenManager.java:570)
at weblogic.ejb.container.deployer.EJBDeployer.deactivate(EJBDeployer.java:1817)
at weblogic.ejb.container.deployer.EJBModule.doDeactivate(EJBModule.java:1041)
at weblogic.ejb.container.deployer.EJBModule.activate(EJBModule.java:420)
at weblogic.application.internal.flow.ModuleListenerInvoker.activate(ModuleListenerInvoker.java:104)
at weblogic.application.internal.flow.DeploymentCallbackFlow$2.next(DeploymentCallbackFlow.java:339)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
at weblogic.application.internal.flow.DeploymentCallbackFlow.activate(DeploymentCallbackFlow.java:68)
at weblogic.application.internal.flow.DeploymentCallbackFlow.activate(DeploymentCallbackFlow.java:60)
at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:640)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:252)
at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:154)
at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:80)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:567)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.activateDeployment(ActivateOperation.java:131)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:101)
at weblogic.deploy.internal.targetserver.operations.StartOperation.doCommit(StartOperation.java:126)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:329)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:845)
at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1246)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:432)
at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:161)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:181)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:12)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:67)
at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:179)
>
####<May 18, 2007 9:49:22 AM GMT> <Error> <Deployer> <tool2> <[ACTIVE] ExecuteThread: '5' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1179481762823> <BEA-149202> <Encountered an exception while attempting to commit the 7 task for the application 'MyEJB'.
Regards,
mohan
Edited by raj_bea_raj at 05/29/2007 1:35 AM
Edited by raj_bea_raj at 05/29/2007 1:41 AMIf you're using OC4J standalone, use the latest available OC4J, 10.1.3.3.
If you're using a manage OC4J, ie. Application Server, upgrade to the latest available version and upgrade your JDK. The provided JDK might be outdated.
--olaf -
Hi,
I enable JCOM in WLS 8.1.2 and once awhile I would see the following error message
throw by WLS Server. I assuming it's a bug within weblogic.
<May 4, 2004 8:49:31 AM CDT> <Error> <Kernel> <BEA-000802> <ExecuteRequest faile
d
java.lang.NullPointerException.
java.lang.NullPointerException
at java.util.Hashtable.get(Ljava.lang.Object;)Ljava.lang.Object;(Optimiz
ed Method)
at weblogic.com.COMService.getSubjectFromCache(Ljava.lang.Object;)Lweblo
gic.security.acl.internal.AuthenticatedSubject;(COMService.java:133)
at weblogic.com.COMExecuteRequest.execute(Lweblogic.kernel.ExecuteThread
;)V(COMExecuteRequest.java:67)
at weblogic.kernel.ExecuteThread.execute(Lweblogic.kernel.ExecuteRequest
;)V(ExecuteThread.java:197)
at weblogic.kernel.ExecuteThread.run()V(ExecuteThread.java:170)
at java.lang.Thread.startThreadFromVM(Ljava.lang.Thread;)V(Unknown Sourc
e)
>Hello,
In general, JNDI clients should assume the correct environment is already configured so there is no need to explicitly set property values and pass them to the InitialContext constructor. However, a JNDI client may need to access a name space other than the one identified in its environment. In this case, it is necessary to explicitly set the java.naming.provider.url (provider URL) property used by the InitialContext constructor. A provider URL contains bootstrap server information that the initial context factory can use to obtain an initial context. Any property values passed in directly to the InitialContext constructor take precedence over settings of those same properties found elsewhere in the environment.
Context.PROVIDER_URL— specifies the URL of the WebLogic Server that provides the name service. The default is t3://localhost:7001. So that you are getting the following result:
ProviderURL=t3://localhost:7001
Regards,
Kuldeep Singh. -
Is the trial version of WLS 6.1 clusterable ?
Hi all,
I'd like to know if the trial version of WLS 6.1
(available for downloading) is clustarable - or -
only the product with license is clusterable.
Thanks
Francesco
It should be.
Michael Girdley
BEA Systems
Learning WebLogic? Buy the book:
http://www.learnweblogic.com/
At Amazon:
http://www.amazon.com/exec/obidos/ASIN/0130911119/learnweblogic/103-6817548-
3834229
"Pen Friend" <[email protected]> wrote in message
news:[email protected]..
> Francesco,
>
> Open the license.bea in the bea home and see if it has a cluster license
> component. If yes, then the eval ersion can be clustered.
>
> Francesco wrote:
>
> > Hi all,
> > I'd like to know if the trial version of WLS 6.1
> > (available for downloading) is clustarable - or -
> > only the product with license is clusterable.
> > Thanks
> > Francesco
>
-
Bug in WLS 6.1 DataSource + Oracle Pool
Does any one has arrived to execute an Oracle Stored procedure which
return a CURSOR in response with JDBC through the DataSource?
It's working perfectly with WLS 5.1sp9 to 6.0sp2
and NOT with the 6.1 (even sp1) ...
Exception : weblogic.jdbc.rmi.internal.ResultSetImpl
Any idea ?
Best regards.Does any one has arrived to execute an Oracle Stored procedure which
return a CURSOR in response with JDBC through the DataSource?
It's working perfectly with WLS 5.1sp9 to 6.0sp2
and NOT with the 6.1 (even sp1) ...
Exception : weblogic.jdbc.rmi.internal.ResultSetImpl
Any idea ?
Best regards. -
Help needed with wls 8 and clustering
Hi,
I need to synchronize the access to some entity beans in a cluster environment.
What is the most common pattern? Should my transaction hold a lock on the db during
while it's executing to ensure data integrity? Does weblogic offer any kind of
automatic status replication between entity ejbs in a cluster? I couldn't find
any useful info about that.
Thanks,
A.Typically we'd recommend using the optimistic concurrency option.
-- Rob
iggy wrote:
Hi,
I need to synchronize the access to some entity beans in a cluster environment.
What is the most common pattern? Should my transaction hold a lock on the db during
while it's executing to ensure data integrity? Does weblogic offer any kind of
automatic status replication between entity ejbs in a cluster? I couldn't find
any useful info about that.
Thanks,
A. -
WLS 5.1 Clustering Conflict message help
Does anyone know what this means?
Wed Jun 07 10:10:43 EDT 2000:<I> <ServletContext-General> file: init
Wed Jun 07 10:13:24 EDT 2000:<I> <ConflictHandler> ConflictStart
weblogic.server.server:weblogic.t3.srvr.T3Srvr (from
[email protected]:[
<mailto:[email protected]:[>
7601,7601,7002,7002,7601,-1])
Wed Jun 07 10:13:24 EDT 2000:<I> <ConflictHandler> ConflictStart
weblogic.server.server:weblogic.t3.srvr.T3Srvr_WLStub (from
[email protected]:[
<mailto:[email protected]:[>
7601,7601,7002,7002,7601,-1])
Your help is always appreciated
thanks
Mike Horn
[email protected]
Does this happen all the time?
Are you by any chance giving the same name for both the servers in the
cluster. You should name them different.
- Prasad
Mike Horn wrote:
> Does anyone know what this means?
>
> Wed Jun 07 10:10:43 EDT 2000:<I> <ServletContext-General> file: init
> Wed Jun 07 10:13:24 EDT 2000:<I> <ConflictHandler> ConflictStart
> weblogic.server.server:weblogic.t3.srvr.T3Srvr (from
> [email protected]:[
> <mailto:[email protected]:[>
> 7601,7601,7002,7002,7601,-1])
> Wed Jun 07 10:13:24 EDT 2000:<I> <ConflictHandler> ConflictStart
> weblogic.server.server:weblogic.t3.srvr.T3Srvr_WLStub (from
> [email protected]:[
> <mailto:[email protected]:[>
> 7601,7601,7002,7002,7601,-1])
>
> Your help is always appreciated
>
> thanks
> Mike Horn
> [email protected]
-
WTC config when WLS is clustered...
How does this WTC works with tuxedo when WLS is clustered.
I am using Tuxedo 8.0 and WLS 81. sp2.
This is what I am trying to achieve.
I have a tuxedo domain and two servers in WLS cluster. The WLS server has ejb's which provide identical sevices. These services must be accessed from tuxedo. I can make these two talk if WLS is not clustered. If WLS is clustered I see the tuxedo sending the transaction... but it reaches no where on the WLS side.., even though the -Dweblogic.wtc.TraceLevel=100000 is set.
Here is the config.xml
<WTCServer Name="CRSWTC1" Targets="crs-server1">
<WTCLocalTuxDom AccessPoint="TDOM2" AccessPointId="TDOM2"
BlockTime="6" ConnPrincipalName=""
ConnectionPolicy="ON_STARTUP"
NWAddr="//base1.x.x.x:16666"
Name="WTCLocalTuxDom-1101230072422" RetryInterval="6"/>
<WTCRemoteTuxDom AccessPoint="TDOM1" AccessPointId="TDOM1"
ConnectionPolicy="ON_STARTUP" LocalAccessPoint="TDOM2"
NWAddr="//chela.x.x.x:16665" Name="WTCRemoteTuxDom-1101230111003"/>
<WTCExport EJBName="tuxedo.service.WTCRatingService"
LocalAccessPoint="TDOM2" Name="WTCExport-1101230154745"
RemoteName="" ResourceName="CRS"/>
</WTCServer>
<WTCServer Name="CRSWTC2" Targets="">
<WTCLocalTuxDom AccessPoint="TDOM3" AccessPointId="TDOM3"
BlockTime="6" ConnectionPolicy="ON_STARTUP"
NWAddr="//base2.x.x.x:16666"
Name="WTCLocalTuxDom-1101250069145" RetryInterval="6"/>
<WTCRemoteTuxDom AccessPoint="TDOM1" AccessPointId="TDOM1"
ConnectionPolicy="ON_STARTUP" LocalAccessPoint="TDOM3"
NWAddr="//chela.x.x.x:16665" Name="WTCRemoteTuxDom-1101250249369"/>
<WTCExport EJBName="tuxedo.service.WTCRatingService"
LocalAccessPoint="TDOM3" Name="WTCExport-1101250295839"
RemoteName="" ResourceName="CRS"/>
</WTCServer>
Any help is appreciated...Well your second WTC server instance isn't targeted (deployed) to anything. So WTC is only running on one node in your cluster, crs-server1.
What you want is to create a WTC server instance for each node in the cluster. To Tuxedo, each node in the cluster appears to be a separate domain. Then on the Tuxedo side in the domain gateway config file, import the service from each WLS domain (node).
Does that make sense?
Regards,
Todd Little
BEA Tuxedo Engineering -
How do i make wls 9.2 stop shutting itself down within eclipse 3.2.2?
after starting weblogic server 9.2 mp1 from within eclipse
sdk 3.2.2 build M20070212-1330 for solaris gtk, something
programatically requests weblogic server 9.2 to shut
itself down only seconds after the server has started.
steps to reproduce:
1. download & install [url http://download.eclipse.org/eclipse/downloads/drops/R-3.2.2-200702121330/]eclipse sdk 3.2.2 build M20070212-1330 for solaris
(eclipse-SDK-3.2.2-solaris-gtk.zip)
2. update eclipse sdk with the [url http://download.eclipse.org/webtools/downloads/drops/R1.5/R-1.5.3-200702082048/]Web Tools Platform (WTP)
1.5.3 plus all of the WTP 1.5.3 pre-reqs
3. download & install [url http://commerce.bea.com/showallversions.jsp?family=WLS]bea weblogic server 9.2 mp1 binary
package installer for solaris 9 sparc
4. confirm that bea weblogic server's sample domain can
be started from the solaris 9's shell
$ $BEA_HOME/weblogic92/samples/domains/workshop/startWebLogic.sh
5. create a j2ee enterprise application by following the
instructions in [url http://www.eclipse.org/webtools/community/tutorials/BuildJ2EEWebApp/BuildJ2EEWebApp.html]this WTP tutorial
a. in the "Choose a Server Runtime Environment" step,
choose BEA WebLogic 9.2 server instead of Tomcat.
6. start the generic bea weblogic server v9.2.1 from the
servers view as instructed in the tutorial.
the eclipse status bar in the bottom right hand corner of
eclipse indicates that weblogic server 9.2 is starting.
eclipse then switches focus from the servers view to the
console view. the console view lists the typical weblogic
server startup console entries:
...<Server state changed to STANDBY>
...<Server state changed to STARTING>
...<No test table set up for pool "cgDataSource". Connections will not be
tested.>
...<No test table set up for pool "cgDataSource-nonXA". Connections will not be
tested.>
...<No test table set up for pool "samplesDataSource". Connections will not be
tested.>
...[see 13_05_07_eclipse_wls_startup.txt in [url https://bugs.eclipse.org/bugs/attachment.cgi?id=66989]comment #1 attachment of [url https://bugs.eclipse.org/bugs/show_bug.cgi?id=186716]eclipse bug #186716 for full
console output]
eventually - but only for a few seconds - the servers view indicates the state
of the weblogic server as "Started". the following log entries snipped from
weblogic server 9.2's filesystem logs confirm that the wls did actually start
at some point:
...<Server state changed to RUNNING>
...<Server started in RUNNING mode>
...<78% of the total memory in the server is free>
...[see cgServer.log in [url https://bugs.eclipse.org/bugs/attachment.cgi?id=66989]comment #1 attachment of [url https://bugs.eclipse.org/bugs/show_bug.cgi?id=186716]eclipse bug #186716 for full log output]
then eclipse automatically switches focus to the console view again; displaying
the following:
$BEA_HOME/weblogic92/samples/domains/workshop/bin/stopWebLogic.sh:
Stopping Weblogic Server...
Initializing WebLogic Scripting Tool (WLST) ...
Welcome to WebLogic Server Administration Scripting Shell
Type help() for help on available commands
Connecting to t3://localhost:7001 with userid weblogic ...
This Exception occured at Sun May 13 12:35:42 BST 2007.
javax.naming.CommunicationException [Root exception is
java.net.ConnectException: t3://localhost:7001: Destination unreachable; nested
exception is:
java.net.ConnectException: Connection refused; No available router to
destination]
...[see 13_05_07_eclipse_wls_shutdown.txt in [url https://bugs.eclipse.org/bugs/attachment.cgi?id=66989]comment #1 attachment of [url https://bugs.eclipse.org/bugs/show_bug.cgi?id=186716]eclipse bug #186716 for full
stack trace]
the servers view eventually indicates the server has transitioned to the
"Stopped" state. the problem is, i never commanded neither eclipse or wls to
shutdown the wls server.
since the wls server can be successfully started outside of eclipse from the
shell, and since - once it is successfully started outside of eclipse - wls
doesn't automatically shutdown as soon as it starts; i suspect there is
something in eclipse|wtp that is triggering the automatic
shutdown. but of course, i could be wrong. maybe something
in wls itself is at fault.
i encountered this exact same bug in wls 9.0 with eclipse 3.2.2/wtp 1.5.3 on
solaris 9 sparc (which is what prompted me to upgrade to wls 9.2 on solaris 9
sparc; see [url https://bugs.eclipse.org/bugs/show_bug.cgi?id=169197]eclipse bug #169197); and i encounter this exact same bug with wls 9.2 with
eclipse 3.2.2/wtp 1.5.3 in mac os x 10.4.9! there is a
slight difference in what happens in solaris vs what happens on the mac. on the mac, the exception appears to
be thrown at a different point (when a wldeploy.xml script
is executed; not at the point of "Initializing WebLogic
Scripting Tool (WLST)" like in the solaris installation):
Buildfile: /Applications/eclipse/plugins/org.eclipse.jst.server.generic.weblogic_1.5.1.v200609141504/buildfiles/wldeploy.xml
init:
deploy:
[echo] Deploying module WTP_WebApp_Tutorial
[wldeploy] weblogic.Deployer -debug -verbose -noexit -name WTP_WebApp_Tutorial -source /Users/bilbo/development/projects/eclipse_3.2.2_tutorial/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/WTP_WebApp_Tutorial -adminurl t3://localhost:7001 -user weblogic -password ******** -deploy
[wldeploy] weblogic.Deployer invoked with options: -debug -verbose -noexit -name WTP_WebApp_Tutorial -source /Users/bilbo/development/projects/eclipse_3.2.2_tutorial/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/WTP_WebApp_Tutorial -adminurl t3://localhost:7001 -user weblogic -deploy
[wldeploy] [WebLogicDeploymentManagerImpl.<init>():103] : Constructing DeploymentManager for J2EE version V1_4 deployments
[wldeploy] [WebLogicDeploymentManagerImpl.getNewConnection():146] : Connecting to admin server at localhost:7001, as user weblogic
[wldeploy] [ServerConnectionImpl.getEnvironment():288] : setting environment
[wldeploy] [ServerConnectionImpl.getEnvironment():291] : getting context using t3://localhost:7001
[wldeploy] [ServerConnectionImpl.close():334] : Closing DM connection
[wldeploy] [ServerConnectionImpl.close():354] : Unregistered all listeners
[wldeploy] weblogic.deploy.api.tools.deployer.DeployerException: Unable to connect to 't3://localhost:7001': Destination unreachable; nested exception is:
[wldeploy] java.net.ConnectException: Connection refused; No available router to destination. Ensure the url represents a running admin
... also, on the mac the cgServer.log has the following additional log entries:
...<Graceful shutdown of cgServer was issued remotely from 10.0.0.9>
...<Server shutdown has been requested by weblogic>
...<Server state changed to SUSPENDING>
... <Server state changed to ADMIN>
...<Server state changed to SHUTTING_DOWN>
...<Channel "Default[2]" listening on 127.0.0.1:7001 was shutdown.>
...in all cases, i have done nothing
more and nothing less than what the eclipse/wtp and weblogic documentation has
instructed me to do.
please, can anybody suggest a fix or a workaround. thanks in advance.
Edited by wboyd at 05/13/2007 7:48 AMthanks rob,
please, can you clarify what bearing the global system properties mentioned in CR299479 at the bottom of [url http://e-docs.bea.com/workshop/docs92/relnotes/relnotes.html#wp1139954]this page of 9.2.1 release notes have on the timeout value discussed in [url https://bugs.eclipse.org/bugs/show_bug.cgi?id=186902]this eclipse wtp bug report?
many thanks,
wboyd -
WLS 8.1 sp1 with Struts 1.1 JSP with bean tag won't compile
Hello,
We are currently porting our application which uses struts 1.1 to WLS 8.1 sp1
from another app server. Everything seems to deploy correctly and pages which
use struts tags appear to compile and run fine. However, the pages with struts
<bean:define> tags are not compiling.
Example JSP Code:
<bean:define id="userForm" name="userForm" scope="session" toScope="page" type="UserFormBean"/>
<% if (userForm.hasUserData()) {hasUser=true;} %>
WLS Console Output:
..jsp_servlet\_jsp\_sailor\__home.java:493: cannot resolve symbol
symbol : variable userForm
location: class jsp_servlet._jsp._sailor.__home
if (userForm.hasUserData()) { //[ /jsp/sailor/home.jsp; Line: 38]
When I look at the JSP's parsed java code (__home.java:493) I find that nowhere
in the class is the variable userForm declared.
Is this a bug in WLS? Does anyone know of a workaround?
Thanks,
Scott
Please contact customer support [email protected] and request a patch for
CR112789. AT_END tags do not work correctly in 81sp1
--Nagesh
"Scott Fleming" <[email protected]> wrote in message
news:3f734c0d$[email protected]..
>
> Hello,
>
> We are currently porting our application which uses struts 1.1 to WLS 8.1
sp1
> from another app server. Everything seems to deploy correctly and pages
which
> use struts tags appear to compile and run fine. However, the pages with
struts
> <bean:define> tags are not compiling.
>
> Example JSP Code:
>
> <bean:define id="userForm" name="userForm" scope="session" toScope="page"
type="UserFormBean"/>
>
> <% if (userForm.hasUserData()) {hasUser=true;} %>
>
> WLS Console Output:
>
> ..jsp_servlet\_jsp\_sailor\__home.java:493: cannot resolve symbol
> symbol : variable userForm
> location: class jsp_servlet._jsp._sailor.__home
> if (userForm.hasUserData()) { //[ /jsp/sailor/home.jsp; Line:
38]
>
> When I look at the JSP's parsed java code (__home.java:493) I find that
nowhere
> in the class is the variable userForm declared.
>
> Is this a bug in WLS? Does anyone know of a workaround?
>
> Thanks,
> Scott
-
WLS 8.1 issue with .ear deployment ....
I think the weblogic8.1 seems to have some NEW bug now. We have a .ear file that
works just PERFECT in WLS6.1. But now when we try to DEPLOY this .ear file our
WLS8.1 server(via the new look and feel of WLS8.1' console)....we are getting
the Exception like ...."pl read inline below":
...All i know is that WLS 8.1 has introduced something like : "single J2EEC -
EAR compiler, replacing the separate compilers in previous releases" ........is
it may be because of this ????
If somebody has any idea ....please let me know asap ...and just above the EXCEPTION
we are also getting something like ...."Deployment descriptor "/WEB-INF/ups-html.tld"
is malformed" ....what is going wrong now ?
Please note again ....this .ear file just work PERFECT in WLS6.1+sp2.
Read inline for the Exception:
<Jul 16, 2003 11:15:14 AM EDT> <Warning> <HTTP> <BEA-101248> <[ServletContext(id=4316640,name=ABL,context-path=/ABL)]:
Deployment descriptor "/WEB-INF/ups-html.tld" is malformed. Check against the
DTD: Element type "info" must be declared. (line 334, column 9).>
<Jul 16, 2003 11:15:14 AM EDT> <Warning> <HTTP> <BEA-101248> <[ServletContext(id=4316640,name=ABL,context-path=/ABL)]:
Deployment descriptor "/WEB-INF/ups-html.tld" is malformed. Check against the
DTD: The content of element type "tag" must match "(name,tag-class,tei-class?,body-content?,display-name?,small-icon?,large-icon?,description?,variable*,attribute*,example?)".
(line 335, column 8).>
MessageResourcesFactory.createFactory
java.lang.NoClassDefFoundError: org/apache/struts/util/MessageResourcesFactory
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:502)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:431)
at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:169)
at java.lang.ClassLoader.loadClass(ClassLoader.java:299)
at java.lang.ClassLoader.loadClass(ClassLoader.java:292)
at java.lang.ClassLoader.loadClass(ClassLoader.java:255)
at weblogic.utils.classloaders.ChangeAwareClassLoader.loadClass(ChangeAwareClassLoader.java:41)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:315)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:140)
at org.apache.struts.util.MessageResourcesFactory.createFactory(MessageResourcesFactory.java:161)
at org.apache.struts.action.ActionServlet.initApplication(ActionServlet.java:1029)
at org.apache.struts.action.ActionServlet.init(ActionServlet.java:464)
at javax.servlet.GenericServlet.init(GenericServlet.java:258)
at weblogic.servlet.internal.ServletStubImpl$ServletInitAction.run(ServletStubImpl.java:1070)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:97)
at weblogic.servlet.internal.ServletStubImpl.createServlet(ServletStubImpl.java:893)
at weblogic.servlet.internal.ServletStubImpl.createInstances(ServletStubImpl.java:842)
at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:782)
at weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppServletContext.java:3191)
at weblogic.servlet.internal.WebAppServletContext.preloadServlets(WebAppServletContext.java:3136)
at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:3109)
at weblogic.servlet.internal.WebAppServletContext.setStarted(WebAppServletContext.java:5559)
at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:853)
at weblogic.j2ee.J2EEApplicationContainer.start(J2EEApplicationContainer.java:2012)
at weblogic.j2ee.J2EEApplicationContainer.activate(J2EEApplicationContainer.java:2053)
at weblogic.management.deploy.slave.SlaveDeployer$ComponentActivateTask.activateContainer(SlaveDeployer.java:2558)
at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.doCommit(SlaveDeployer.java:2483)
at weblogic.management.deploy.slave.SlaveDeployer$Task.commit(SlaveDeployer.java:2308)
at weblogic.management.deploy.slave.SlaveDeployer.commitUpdate(SlaveDeployer.java:639)
at weblogic.drs.internal.SlaveCallbackHandler$2.execute(SlaveCallbackHandler.java:35)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:178)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:151)
<Jul 16, 2003 11:15:14 AM EDT> <Error> <HTTP> <BEA-101046> <[ServletContext(id=4316640,name=ABL,context-path=/ABL)]
service: Cannot load application resources bundle com.ups.dfd.abl.prop.Constants
java.lang.NullPointerException
at org.apache.struts.action.ActionServlet.initApplication(ActionServlet.java:1031)
at org.apache.struts.action.ActionServlet.init(ActionServlet.java:464)
at javax.servlet.GenericServlet.init(GenericServlet.java:258)
at weblogic.servlet.internal.ServletStubImpl$ServletInitAction.run(ServletStubImpl.java:1070)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:97)
at weblogic.servlet.internal.ServletStubImpl.createServlet(ServletStubImpl.java:893)
at weblogic.servlet.internal.ServletStubImpl.createInstances(ServletStubImpl.java:842)
at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:782)
at weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppServletContext.java:3191)
at weblogic.servlet.internal.WebAppServletContext.preloadServlets(WebAppServletContext.java:3136)
at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:3109)
at weblogic.servlet.internal.WebAppServletContext.setStarted(WebAppServletContext.java:5559)
at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:853)
at weblogic.j2ee.J2EEApplicationContainer.start(J2EEApplicationContainer.java:2012)
at weblogic.j2ee.J2EEApplicationContainer.activate(J2EEApplicationContainer.java:2053)
at weblogic.management.deploy.slave.SlaveDeployer$ComponentActivateTask.activateContainer(SlaveDeployer.java:2558)
at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.doCommit(SlaveDeployer.java:2483)
at weblogic.management.deploy.slave.SlaveDeployer$Task.commit(SlaveDeployer.java:2308)
at weblogic.management.deploy.slave.SlaveDeployer.commitUpdate(SlaveDeployer.java:639)
at weblogic.drs.internal.SlaveCallbackHandler$2.execute(SlaveCallbackHandler.java:35)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:178)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:151)
>
<Jul 16, 2003 11:15:14 AM EDT> <Error> <HTTP> <BEA-101216> <Servlet: "service"
failed to preload on startup in Web application: "ABL".
javax.servlet.UnavailableException: Cannot load application resources bundle com.ups.dfd.abl.prop.Constants
at org.apache.struts.action.ActionServlet.initApplication(ActionServlet.java:1043)
at org.apache.struts.action.ActionServlet.init(ActionServlet.java:464)
at javax.servlet.GenericServlet.init(GenericServlet.java:258)
at weblogic.servlet.internal.ServletStubImpl$ServletInitAction.run(ServletStubImpl.java:1070)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:97)
at weblogic.servlet.internal.ServletStubImpl.createServlet(ServletStubImpl.java:893)
at weblogic.servlet.internal.ServletStubImpl.createInstances(ServletStubImpl.java:842)
at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:782)
at weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppServletContext.java:3191)
at weblogic.servlet.internal.WebAppServletContext.preloadServlets(WebAppServletContext.java:3136)
at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:3109)
at weblogic.servlet.internal.WebAppServletContext.setStarted(WebAppServletContext.java:5559)
at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:853)
at weblogic.j2ee.J2EEApplicationContainer.start(J2EEApplicationContainer.java:2012)
at weblogic.j2ee.J2EEApplicationContainer.activate(J2EEApplicationContainer.java:2053)
at weblogic.management.deploy.slave.SlaveDeployer$ComponentActivateTask.activateContainer(SlaveDeployer.java:2558)
at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.doCommit(SlaveDeployer.java:2483)
at weblogic.management.deploy.slave.SlaveDeployer$Task.commit(SlaveDeployer.java:2308)
at weblogic.management.deploy.slave.SlaveDeployer.commitUpdate(SlaveDeployer.java:639)
at weblogic.drs.internal.SlaveCallbackHandler$2.execute(SlaveCallbackHandler.java:35)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:178)
thx, sangitaRob,
These are the 3 files that you need:
1) wlstart_cap (this is the start up script that we use to start the Managed server
while on WLS6.1) ....please read inline:
-----------Inline 1-----------------
#!/bin/ksh
# BEA WebLogic Start Script - Version 1.1
# Add support for STARTMODE MKG 03/08/2002
# Set user specified variables
JAVA_HOME=/usr/j2sdk1_3_1_01
JAVA_OPTIONS="-D$1 -ms128m -mx128m -noclassgc"
BEA_HOME=/opt/bea
WL_HOME=$BEA_HOME/wlserver6.1
WL_SCRIPT=$WL_HOME/config/Subsidiary
export WL_SCRIPT
EXPORT_LIB=$WL_HOME/lib
#### Set locale to US English MKG 2003/01/16
LC_MESSAGES=C
LC_TIME=en_US.ISO8859-1
LC_NUMERIC=en_US.ISO8859-1
LC_MONETARY=en_US.ISO8859-1
LC_COLLATE=en_US.ISO8859-1
LC_CTYPE=en_US.ISO8859-1
export LC_MESSAGES LC_TIME LC_NUMERIC LC_MONETARY LC_COLLATE LC_CTYPE
#### End locale settings
#### UPSCAP-clientmanger App settings --- Begin
# workaround for strange bug in code that requires an x-server
# to be present when graph code is initialized.
# Note that this is my sun workstation. MKG 05/16/2002
DISPLAY=bluewolf.telecom.ups.com:0.0
export DISPLAY
#### UPSCAP-clientmanger App settings --- End
#### EUP App settings --- Begin
VANAPI_HOME=/opt/vanapi
VANPATH=$VANPATH:$VANAPI_HOME/vanapi/share
LD_LIBRARY_PATH=$VANAPI_HOME/vanapi:$VANAPI_HOME/vanapi/vanjavi:$LD_LIBRARY_PATH
PATH=$VANAPI_HOME/perl_dir/bin:$PATH
EUP_CLASSPATH=$WL_HOME/config/Subsidiary/serverclasses
export VANPATH LD_LIBRARY_PATH VANAPI_HOME PATH EUP_CLASSPATH
#### EUP App settings --- End
CLASSPATH=$WL_HOME/lib/CR061106_61sp2.jar:$WL_HOME/lib/CR072612_61sp2.jar:$WL_HOME/lib/CR071109_610sp2.jar:$WL_
HOME/lib/CR058352_61sp2.jar:$WL_HOME/lib/weblogic.jar:$BEA_HOME:$EUP_CLASSPATH
if [ -n "$LD_LIBRARY_PATH" ]; then
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$WL_HOME/lib/solaris:
else
LD_LIBRARY_PATH=$WL_HOME/lib/solaris:
fi
export LD_LIBRARY_PATH
ADMIN_URL=$(cat $WL_SCRIPT/config.weblogic|grep AdminServerURL|awk '{print $2}')
ADMIN_SERVER_NAME=$(cat $WL_SCRIPT/config.weblogic|grep AdminServerName|awk '{print
$2}')
DOMAIN_NAME=$(cat $WL_SCRIPT/config.weblogic|grep Domain|awk '{print $2}')
PATH=$WL_HOME/bin:$JAVA_HOME/bin:$PATH
export PATH
WLS_PW=$(cat $WL_SCRIPT/bea.check | awk '{print $1}')
export $WLS_PW
#################################export LOG_HOME=/export/bea/netsite/ext-admin/logs/bea
export LOG_HOME=/export/bea/logs
# echo all of the variable settings
#echo
#echo "BEA_HOME=$BEA_HOME"
#echo "WL_HOME=$WL_HOME"
echo "EXPORT_HOME=$EXPORT_HOME"
echo "CLASSPATH=$CLASSPATH"
#echo "LD_LIBRARY_PATH=$LD_LIBRARY_PATH"
#echo "PATH=$PATH"
#echo "JAVA_OPTIONS=$JAVA_OPTIONS"
#echo "DOMAIN_NAME=$DOMAIN_NAME"
#echo "ADMIN_URL=$ADMIN_URL"
#echo "ADMIN_SERVER_NAME=$ADMIN_SERVER_NAME"
#java -fullversion
#echo
#echo
# Grab some file descriptors.
maxfiles='ulimit -H -n'
if [ ! $? -a "$maxfiles" != 1024 ]; then
if [ "$maxfiles" = "unlimited" ]; then
maxfiles=1025
fi
if [ "$maxfiles" -lt 1024 ]; then
ulimit -n $maxfiles
else
ulimit -n 1024
fi
fi
# Set Production Mode. When set to true, the server starts up
# in production mode. When set to false, the server starts up
# in development mode. The default is false.
STARTMODE=true
if [[ -n $1 ]]; then
if [[ $1 = "admin" ]]; then
echo "Starting admin server...."
###### echo "See /export/netsite/ext-admin/logs/bea/admin.start for more info"
# Change to the WebLogic directory
cd $WL_HOME
echo nohup java $JAVA_OPTIONS -classpath $CLASSPATH -Dweblogic.Domain=$DOMAIN_NAME
-Dweblogic.Name=$ADM
IN_SERVER_NAME -Dbea.home=$BEA_HOME -Djava.security.policy==$WL_HOME/lib/weblogic.policy
-Dweblogic.Production
ModeEnabled=$STARTMODE -Dweblogic.management.password=$WLS_PW -Dweblogic.management.discover=true
-Dweblogic.ma
nagement.discover.retries=6 -Dweblogic.management.discover.interval=90 weblogic.Server
nohup java $JAVA_OPTIONS -classpath $CLASSPATH -Dweblogic.Domain=$DOMAIN_NAME
-Dweblogic.Name=$ADMIN_SE
RVER_NAME -Dbea.home=$BEA_HOME -Djava.security.policy==$WL_HOME/lib/weblogic.policy
-Dweblogic.ProductionModeE
nabled=$STARTMODE -Dweblogic.management.password=$WLS_PW -Dweblogic.management.discover=true
-Dweblogic.managem
ent.discover.retries=6 -Dweblogic.management.discover.interval=90 weblogic.Server
$LOG_HOME/admin.start 2>&1&
echo
shift
# Change back to the domain directory
cd config/$DOMAIN_NAME
echo $! > admin.pid
else
while [[ $# -gt 0 ]];do
SERVER_NAME=$(cat $WL_SCRIPT/config.weblogic|grep $1|awk '{print $2}')
if [[ $SERVER_NAME = "" ]]; then
echo "ERROR: unable to locate an entry for "$1" in config file"
shift
else
echo "Starting server: "$SERVER_NAME
######### echo "See /export/netsite/ext-admin/logs/bea/$SERVER_NAME.start
for more info"
# Change to the WebLogic directory
cd $WL_HOME
echo nohup java $JAVA_OPTIONS -classpath $CLASSPATH -Dweblogic.Domain=$DOMAIN_NAME
-Dweblogic.Nam
e=$SERVER_NAME -Dweblogic.management.server=$ADMIN_URL -Djava.security.policy==$WL_HOME/lib/weblogic.policy
-Dw
eblogic.ProductionModeEnabled=$STARTMODE -Dweblogic.management.password=$WLS_PW
weblogic.Server
nohup java $JAVA_OPTIONS -classpath $CLASSPATH -Dweblogic.Domain=$DOMAIN_NAME
-Dweblogic.Name=$SE
RVER_NAME -Dweblogic.management.server=$ADMIN_URL -Djava.security.policy==$WL_HOME/lib/weblogic.policy
-Dweblog
ic.ProductionModeEnabled=$STARTMODE -Dweblogic.management.password=$WLS_PW weblogic.Server
$LOG_HOME/$SERVER_NAME.start 2>&1 &
shift
# Change back to the domain directory
cd config/$DOMAIN_NAME
echo $! > $SERVER_NAME".pid"
fi
done
fi
else
echo ""
echo ""
echo "FATAL ERROR: You must specify the server to start. Either 'admin' or
the server token"
echo ""
fi
-----------Inline 1 ends-----------------
2) startManagedWebLogic.sh(this is the Managed server start up script at wls8.1)
---------Inline 2 starts---------
#!/bin/sh
# This script is used to start a managed WebLogic Server for the domain in the
# current working directory. This script reads in the SERVER_NAME and
# ADMIN_URL as positional parameters, sets the SERVER_NAME variable, then
# starts the server.
# Other variables that startWLS takes are:
# WLS_USER - cleartext user for server startup
# WLS_PW - cleartext password for server startup
# PRODUCTION_MODE - Set to true for production mode servers, false for
# development mode
# JAVA_OPTIONS - Java command-line options for running the server. (These
# will be tagged on to the end of the JAVA_VM and MEM_ARGS)
# JAVA_VM - The java arg specifying the VM to run. (i.e. -server,
# -hotspot, etc.)
# MEM_ARGS - The variable to override the standard memory arguments
# passed to java
# For additional information, refer to the WebLogic Server Administration Guide
# (http://e-docs.bea.com/wls/docs81/ConsoleHelp/startstop.html).
#Set the New Java Path
PATH=/opt/bea/jdk141_02/bin:$PATH
# set up WL_HOME, the root directory of your WebLogic installation
WL_HOME="/opt/bea/weblogic81"
# set up common environment
# Set Production Mode. When this is set to true, the server starts up in
# production mode. When set to false, the server starts up in development
# mode. If it is not set, it will default to false.
PRODUCTION_MODE="true"
# Set JAVA_VENDOR to java virtual machine you want to run on server side.
JAVA_VENDOR="Sun"
# Set JAVA_HOME to java virtual machine you want to run on server side.
JAVA_HOME="/opt/bea/jdk141_02"
set USE_CURRENT_JAVA_HOME "$@"
. "${WL_HOME}/common/bin/commEnv.sh"
shift 1
# Set SERVER_NAME to the name of the server you wish to start up.
ADMIN_URL=http://153.2.255.51:8001
SERVER_NAME=
# Set WLS_USER equal to your system username and WLS_PW equal
# to your system password for no username and password prompt
# during server startup. Both are required to bypass the startup
# prompt.
WLS_USER=
WLS_PW=
# Set JAVA_VM to java virtual machine you want to run on server side.
# JAVA_VM="-server"
# Set JAVA_OPTIONS to the java flags you want to pass to the vm. If there
# are more than one, include quotes around them. For instance:
# JAVA_OPTIONS="-Dweblogic.attribute=value -Djava.attribute=value"
usage()
echo "Need to set SERVER_NAME and ADMIN_URL environment variables or specify"
echo "them in command line:"
echo 'Usage: ./startManagedWebLogic.sh [SERVER_NAME] [ADMIN_URL]'
echo "for example:"
echo './startManagedWebLogic.sh managedserver1 http://localhost:7001'
exit 1
# Check for variables SERVER_NAME and ADMIN_URL
# SERVER_NAME and ADMIN_URL must by specified before starting a managed server,
# detailed information can be found at http://e-docs.bea.com/wls/docs81/adminguide/startstop.html.
if [ ${#} = 0 ]; then
if [ "x${SERVER_NAME}" = "x" -o "x${ADMIN_URL}" = "x" ]; then
usage
fi
elif [ ${#} = 1 ]; then
SERVER_NAME=${1}
if [ "x${ADMIN_URL}" = "x" ]; then
usage
fi
elif [ ${#} = 2 ]; then
SERVER_NAME=${1}
ADMIN_URL=${2}
else
usage
fi
# Start WebLogic server
# Reset number of open file descriptors in the current process
# This function is defined in commEnv.sh
resetFd
CLASSPATH="${WEBLOGIC_CLASSPATH}${CLASSPATHSEP}${POINTBASE_CLASSPATH}${CLASSPATHSEP}${JAVA_HOME}/jre/lib/rt.jar${CLASSPATHSEP}${WL_HOME}/server/lib/webservices.jar${CLASSPATHSEP}${CLASSPATH}"
export CLASSPATH
# Start WebLogic server
echo CLASSPATH="${CLASSPATH}"
echo
echo PATH="${PATH}"
echo
echo "***************************************************"
echo "* To start WebLogic Server, use a username and *"
echo "* password assigned to an admin-level user. For *"
echo "* server administration, use the WebLogic Server *"
echo "* console at http://<hostname>:<port>/console *"
echo "***************************************************"
"$JAVA_HOME/bin/java" ${JAVA_VM} ${MEM_ARGS} ${JAVA_OPTIONS} \
-Dweblogic.Name=${SERVER_NAME} \
-Dweblogic.management.username=${WLS_USER} \
-Dweblogic.management.password=${WLS_PW} \
-Dweblogic.management.server=${ADMIN_URL} \
-Djava.security.policy="${WL_HOME}/server/lib/weblogic.policy" \
weblogic.Server
-------Inline 2 ends----------
3) startWebLogic.sh(this is the Admin start up script at wls8.1)
---------Inline 3 starts-------
#!/bin/sh
# This script is used to start WebLogic Server for the domain in the current
# working directory. This script simply sets the SERVER_NAME variable
# and calls the startWLS.sh script under ${WL_HOME}/server/bin.
# To create your own start script for your domain, all you need to set is
# SERVER_NAME, then starts server.
# Other variables that startWLS takes are:
# WLS_USER - cleartext user for server startup
# WLS_PW - cleartext password for server startup
# PRODUCTION_MODE - Set to true for production mode servers, false for
# development mode
# JAVA_OPTIONS - Java command-line options for running the server. (These
# will be tagged on to the end of the JAVA_VM and MEM_ARGS)
# JAVA_VM - The java arg specifying the VM to run. (i.e. -server,
# -hotspot, etc.)
# MEM_ARGS - The variable to override the standard memory arguments
# passed to java
# For additional information, refer to the WebLogic Server Administration
# Console Online Help(http://e-docs.bea.com/wls/docs81/ConsoleHelp/startstop.html)
#Set the New Java Path
PATH=/opt/bea/jdk141_02/bin:$PATH
# set up WL_HOME, the root directory of your WebLogic installation
WL_HOME="/opt/bea/weblogic81"
# set up common environment
# Set Production Mode. When this is set to true, the server starts up in
# production mode. When set to false, the server starts up in development
# mode. If it is not set, it will default to false.
PRODUCTION_MODE="true"
# Set JAVA_VENDOR to java virtual machine you want to run on server side.
JAVA_VENDOR="Sun"
# Set JAVA_HOME to java virtual machine you want to run on server side.
JAVA_HOME="/opt/bea/jdk141_02"
set USE_CURRENT_JAVA_HOME "$@"
. "${WL_HOME}/common/bin/commEnv.sh"
shift 1
# Set SERVER_NAME to the name of the server you wish to start up.
SERVER_NAME=Admin
# Set WLS_USER equal to your system username and WLS_PW equal
# to your system password for no username and password prompt
# during server startup. Both are required to bypass the startup
# prompt.
WLS_USER=
WLS_PW=
# Set JAVA_VM to java virtual machine you want to run on server side.
# JAVA_VM="-server"
# Set JAVA_OPTIONS to the java flags you want to pass to the vm. If there
# are more than one, include quotes around them. For instance:
# JAVA_OPTIONS="-Dweblogic.attribute=value -Djava.attribute=value"
# Reset number of open file descriptors in the current process
# This function is defined in commEnv.sh
resetFd
# Start WebLogic server
CLASSPATH="${WEBLOGIC_CLASSPATH}${CLASSPATHSEP}${POINTBASE_CLASSPATH}${CLASSPATHSEP}${JAVA_HOME}/jre/lib/rt.jar${CLASSPATHSEP}${WL_HOME}/server/lib/webservices.jar${CLASSPATHSEP}${CLASSPATH}"
export CLASSPATH
"$JAVA_HOME/bin/java" ${JAVA_VM} ${MEM_ARGS} ${JAVA_OPTIONS} -Dweblogic.Name=${SERVER_NAME}
-Dweblogic.management.username=${WLS_USER} -Dweblogic.management.password=${WLS_PW}
-Dweblogic.ProductionModeEnabled=${PRODUCTION_MODE} -Djava.security.policy="${WL_HOME}/server/lib/weblogic.policy"
weblogic.Server
--------Inline 3 ends---------
I think we are getting closer to a solution !
thanks rob,
Rob Woollen <[email protected]> wrote:
Yes, your $CLASSPATH could be the issue. Can you show me the $CLASSPATH
used in each version of the server?
-- Rob
sangita wrote:
Thanks Rob, I understood changing the DOCTYPE ...and i will give ita try.
And iam assuming you might have read my previous response in this chain,Iam using
WLS6.1 & WLS8.1 BOTH on the same hardware unix server....iam just wonderingif
there is any CLASSPATH issue that might have been causing this NoClassDefFoundError......?
just wanted to let you know that iam running WLS6.1 + WLS8.1 on thesame BOX.
I will try other options that you have suggested ....thanks again !
Rob Woollen <[email protected]> wrote:
sangita wrote:
Rob,
Right, you're referencing the Taglib 1.2 DTD, but your tld file conforms
to the Taglib 1.1 DTD. You'll either need to change the DOCTYPE
definition to the Taglib 1.1 DTD or change the tld file to conformto
the 1.2 DTD. how do i do either of the 2 options ?To change your taglib to be the 1.1 DTD you just need to change the
DOCTYPE header to be
<!DOCTYPE taglib
PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN"
"http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
Otherwise, you'll need to change the tld file to be JSP 1.2 compliant.
If you post your tld file here, then I can help.
Iam just guessing here, is it may be due to this DTD/.tld issue thatiam not been
able to DEPLOY the .ear file(now that wls8.1 checks the validity beforedeloying
the app)....are the 2 errors that iam getting, in any ways inter-related?
I'm not sure they're related. It is possible.
i.e is it possible that due to DTD/.tld ....am i getting this NoClassDefFoundError
JUST CURIOUS ???
WELL THANKS FOR YOUR TIME ON THIS ...REALLY APPRECIATE IT !
No problem.
-- Rob
Regards, sangita
Rob Woollen <[email protected]> wrote:
sangita wrote:
1) This is how my .tld looks like:
<?xml version="1.0" encoding="UTF-8" ?>^M
<!DOCTYPE taglib^M
PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"^M
"http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">^M
Right, you're referencing the Taglib 1.2 DTD, but your tld file conforms
to the Taglib 1.1 DTD. You'll either need to change the DOCTYPE
definition to the Taglib 1.1 DTD or change the tld file to conformto
the 1.2 DTD. Unfortunately WLS 6.1 didn't validate the tld file
against
the DTD, but it should have, and you'll need to correct your application.
<taglib>^M
<tlib-version>1.0</tlib-version>^M
<jsp-version>1.2</jsp-version>^M
<short-name>html</short-name>^M
2) the MANIFEST.MF file is located within the ABL.war.
3) I will try placing the struts-util.jar in the WEB-INF/lib directoryof the
ABL.war file. And I will let you if it works or not ?Right. My guess is this is a bug in WLS 8.1. I can see no reasonwhy
the manifest class-path isn't working for you. That's why I askedif
you could send the EAR file so I could investigate, but I understand
that's not always possible.
I suspect the WEB-INF/lib will work, but it's just a workaround.
I'm
not sure if you're using 8.1 or 8.1SP1, but if you're not using SP1,
then you might consider trying that. (java weblogic.version willtell
you.)
Otherwise, I think you should open a case with [email protected]
-- Rob
thx, sangita
Rob Woollen <[email protected]> wrote:
sangita wrote:
Rob, here is the information that you need: Please read inline:
---------------------------iam doing cut&paste
<attribute>^M
<name>styleClass</name>^M
<required>false</required>^M
</attribute>^M
(this is the 334 line)<info>applys the style of
the
number text
if it passes the conditional given</info>^M
</tag>^M
</taglib>^MWell, it looks like you have a JSP 1.1 tld, but it's being validated
against the JSP 1.2 tld. I suspect that you have not declareda
DOCTYPE
and 6.1 defaulted to the older JSP spec.
Anyway, check the first line of your tld file. It should look
something
like this:
<!DOCTYPE taglib
PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN"
"http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
I have an ABL.ear file and this is what it looks like:
ABL.ear
META-INF/
META-INF/MANIFEST.MF
ABL.jar
ABL.war
lib/
lib/struts-util.jar
META-INF/application.xml
and in the ABL.war ...there is a META-INF/MANIFEST.MF file ...and
when
i open
this file ...this is what it contains:Just to double-check, the MANIFEST.MF file is located within the
ABL.war, right?
Manifest-Version: 1.0
Created-By: Ant 1.4.1
Class-Path: lib/struts-util.jar
there is nothing in the CLASSPATH that contains this application'sspecific .jar/.war
...or any classes specific to this application ........BOTH IN
WLS6.1(and
now
in WLS8.1)Hmm, I'm not sure yet what the problem is here. Does it work ifyou
place the struts-util.jar in the WEB-INF/lib directory of the ABL.war
file? (I suspect it will.)
This might be a WLS bug. If you can post your ear file here (oremail
it to me rwoollen at bea dot com), then I can dig into it more.
-- Rob
thx, sangita
Rob Woollen <[email protected]> wrote:
It looks like there are 2 errors.
The first error /WEB-INF/ups-html.tld is most likely the result
of
WLS
8.1 doing more validation on your tld file. If you'd show us
either
the
entire ups-html.tld or just the part around line 334, then wecan
help.
As for the NoClassDefFoundError, you'll have to provide some
more
details about your ear file and environment. Do you have anythingin
the $CLASSPATH on either the 6.1 or 8.1 environments?
-- Rob
Sangita wrote:
I think the weblogic8.1 seems to have some NEW bug now. We have
a
.ear
file that
works just PERFECT in WLS6.1. But now when we try to DEPLOY
this
.ear
file our
WLS8.1 server(via the new look and feel of WLS8.1' console)....we
are
getting
the Exception like ...."pl read inline below":
...All i know is that WLS 8.1 has introduced something like
"single
J2EEC -
EAR compiler, replacing the separate compilers in previous releases"........is
it may be because of this ????
If somebody has any idea ....please let me know asap ...and
just
above
the EXCEPTION
we are also getting something like ...."Deployment descriptor
"/WEB-INF/ups-html.tld"
is malformed" ....what is going wrong now ?
Please note again ....this .ear file just work PERFECT in WLS6.1+sp2.
Read inline for the Exception:
<Jul 16, 2003 11:15:14 AM EDT> <Warning> <HTTP> <BEA-101248>
<[ServletContext(id=4316640,name=ABL,context-path=/ABL)]:
Deployment descriptor "/WEB-INF/ups-html.tld" is malformed.Check
against
the
DTD: Element type "info" must be declared. (line 334, column
9).>
<Jul 16, 2003 11:15:14 AM EDT> <Warning> <HTTP> <BEA-101248><[ServletContext(id=4316640,name=ABL,context-path=/ABL)]:
Deployment descriptor "/WEB-INF/ups-html.tld" is malformed.Check
against
the
DTD: The content of element type "tag" must match "(name,tag-class,tei-class?,body-content?,display-name?,small-icon?,large-icon?,description?,variable*,attribute*,example?)".
(line 335, column 8).>
MessageResourcesFactory.createFactory
java.lang.NoClassDefFoundError: org/apache/struts/util/MessageResourcesFactory
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:502)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:431)
at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:169)
at java.lang.ClassLoader.loadClass(ClassLoader.java:299)
at java.lang.ClassLoader.loadClass(ClassLoader.java:292)
at java.lang.ClassLoader.loadClass(ClassLoader.java:255)
at weblogic.utils.classloaders.ChangeAwareClassLoader.loadClass(ChangeAwareClassLoader.java:41)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:315)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:140)
at org.apache.struts.util.MessageResourcesFactory.createFactory(MessageResourcesFactory.java:161)
at org.apache.struts.action.ActionServlet.initApplication(ActionServlet.java:1029)
at org.apache.struts.action.ActionServlet.init(ActionServlet.java:464)
at javax.servlet.GenericServlet.init(GenericServlet.java:258)
at weblogic.servlet.internal.ServletStubImpl$ServletInitAction.run(ServletStubImpl.java:1070)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:97)
at weblogic.servlet.internal.ServletStubImpl.createServlet(ServletStubImpl.java:893)
at weblogic.servlet.internal.ServletStubImpl.createInstances(ServletStubImpl.java:842)
at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:782)
at weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppServletContext.java:3191)
at weblogic.servlet.internal.WebAppServletContext.preloadServlets(WebAppServletContext.java:3136)
at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:3109)
at weblogic.servlet.internal.WebAppServletContext.setStarted(WebAppServletContext.java:5559)
at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:853)
at weblogic.j2ee.J2EEApplicationContainer.start(J2EEApplicationContainer.java:2012)
at weblogic.j2ee.J2EEApplicationContainer.activate(J2EEApplicationContainer.java:2053)
at weblogic.management.deploy.slave.SlaveDeployer$ComponentActivateTask.activateContainer(SlaveDeployer.java:2558)
at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.doCommit(SlaveDeployer.java:2483)
at weblogic.management.deploy.slave.SlaveDeployer$Task.commit(SlaveDeployer.java:2308)
at weblogic.management.deploy.slave.SlaveDeployer.commitUpdate(SlaveDeployer.java:639)
at weblogic.drs.internal.SlaveCallbackHandler$2.execute(SlaveCallbackHandler.java:35)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:178)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:151)
<Jul 16, 2003 11:15:14 AM EDT> <Error> <HTTP> <BEA-101046> <[ServletContext(id=4316640,name=ABL,context-path=/ABL)]
service: Cannot load application resources bundle com.ups.dfd.abl.prop.Constants
java.lang.NullPointerException
at org.apache.struts.action.ActionServlet.initApplication(ActionServlet.java:1031)
at org.apache.struts.action.ActionServlet.init(ActionServlet.java:464)
at javax.servlet.GenericServlet.init(GenericServlet.java:258)
at weblogic.servlet.internal.ServletStubImpl$ServletInitAction.run(ServletStubImpl.java:1070)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:97)
at weblogic.servlet.internal.ServletStubImpl.createServlet(ServletStubImpl.java:893)
at weblogic.servlet.internal.ServletStubImpl.createInstances(ServletStubImpl.java:842)
at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:782)
at weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppServletContext.java:3191)
at weblogic.servlet.internal.WebAppServletContext.preloadServlets(WebAppServletContext.java:3136)
at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:3109)
at weblogic.servlet.internal.WebAppServletContext.setStarted(WebAppServletContext. -
Error in body tag handling in WLS 7.0
Hi,
I've tried to port an Web Application to WLS 7.0. This app was originally developed
under 5.1, and was later on ported to WLS 6.1. In all WLS versions the behaviour
of our custom tags seems to be equal. But on WLS 7.0 I've found out, that tags, implemented
as body tags (in my special case the bodycontent was declared as "tagdependent")
are completely ignored when no body is given. For example if the tag is used in an
JSP like
<prefix:mytag>
</prefix:mytag>
the tag works. If the tag is used like
<prefix:mytag/>
It is completely ignored. The resulting HTML page still contains <prefix:mytag/>.
Because the behaviour was different in releases pre 7.0 i assume this is a new bug
in WLS 7.0.
Regards,
Christian
I've found out, that BodyTags which are declared as "tagdependent" in the tld file
are completely ignored if no body is given. You can see this if you take a look at
the generated servlet class.
BodyTags which are declared as "JSP" do work with empty body.
Regards,
Christian
"Christian Lauer" <[email protected]> wrote:
>
>Hi,
>
>I've tried to port an Web Application to WLS 7.0. This app was originally
>developed
>under 5.1, and was later on ported to WLS 6.1. In all WLS versions the behaviour
>of our custom tags seems to be equal. But on WLS 7.0 I've found out, that
>tags, implemented
>as body tags (in my special case the bodycontent was declared as "tagdependent")
>are completely ignored when no body is given. For example if the tag is
>used in an
>JSP like
>
> <prefix:mytag>
> ...
> </prefix:mytag>
>
>the tag works. If the tag is used like
>
> <prefix:mytag/>
>
>It is completely ignored. The resulting HTML page still contains <prefix:mytag/>.
>
>Because the behaviour was different in releases pre 7.0 i assume this is
>a new bug
>in WLS 7.0.
>
>Regards,
>Christian
-
BasicRealm getUser() bug in WL5.1?
Hi,
I am facing a weird problem with authentication using a custom realm in WLS5.1.
I have written a custom security realm which implements the BasicRealm and ListableRealm
interfaces (the realm it does not extend Weblogic's AbstractListableRealm).
I have my own implementation of the User object within my realm package (call
it MyUser),
which extends weblogic's User object and provides the following behavior: MyUser
instances
contain a ticket if they have been successfully authenticated. This ticket is
available
through MyUser.getCredential() method.
Now, to the problem: Weblogic stores the wrong User object in the thread after
authentication.
The realm authentication sequence goes as follows:
1. WLS calls the BasicRealm.getUser(String userName) method on my realm.
2. The realm returns a MyUser object with a null ticket (since the user hasn't
been
authenticated). Let's call this user object myuser1.
3. WLS then calls the BasicRealm.getUser(UserInfo userInfo) method on my realm.
4. The realm authenticates the credentials and returns another MyUser object,
this one
with a valid ticket. Call this myuser2.
The problem is, WLS seems to discard myuser2, and store myuser1 in the thread-specific
authentication context. So, when an EJB method executing within that thread calls
Security.getCurrentUser(), it gets back myuser1. Since myuser1.getCredential()
returns null,
the EJB is not able to fetch the authentication ticket.
Is this a bug in WLS? If so, is there a patch available? Failing that, is there
any way to
make WLS store the second user object?
Thanks
RaviHi,
I think your problem is that your first returned user object ( MyUser ) is stored
in a caching realm, and it is this user that is returned when using Security.getCurrentUser().
Instead of creating av new user object when authenticating ( authUserPassword
), just modify the user object already stored in the cache realm.
The code for getting the user object from the cache could look something like
this:
User user = null;
BasicRealm basicRealm = Security.getRealm();
if (basicRealm != null && basicRealm instanceof CachingRealm)
CachingRealm cachingRealm = (CachingRealm)basicRealm;
if (cachingRealm != null)
user = cachingRealm.getUser(name);
user.setTicket(ticket);
Now you can set your ticket attribute on this object and return it as the user
object.
Security.getCurrentUser() should now return a user object with a valid ticket.
Yngve.
"Ravi Shankar" <[email protected]> wrote:
>
Hi,
I am facing a weird problem with authentication using a custom realm
in WLS5.1.
I have written a custom security realm which implements the BasicRealm
and ListableRealm
interfaces (the realm it does not extend Weblogic's AbstractListableRealm).
I have my own implementation of the User object within my realm package
(call
it MyUser),
which extends weblogic's User object and provides the following behavior:
MyUser
instances
contain a ticket if they have been successfully authenticated. This ticket
is
available
through MyUser.getCredential() method.
Now, to the problem: Weblogic stores the wrong User object in the thread
after
authentication.
The realm authentication sequence goes as follows:
1. WLS calls the BasicRealm.getUser(String userName) method on my realm.
2. The realm returns a MyUser object with a null ticket (since the user
hasn't
been
authenticated). Let's call this user object myuser1.
3. WLS then calls the BasicRealm.getUser(UserInfo userInfo) method on
my realm.
4. The realm authenticates the credentials and returns another MyUser
object,
this one
with a valid ticket. Call this myuser2.
The problem is, WLS seems to discard myuser2, and store myuser1 in the
thread-specific
authentication context. So, when an EJB method executing within that
thread calls
Security.getCurrentUser(), it gets back myuser1. Since myuser1.getCredential()
returns null,
the EJB is not able to fetch the authentication ticket.
Is this a bug in WLS? If so, is there a patch available? Failing that,
is there
any way to
make WLS store the second user object?
Thanks
Ravi -
WLS 8.1 an the XAResource interface
Hi I wonder if someone could advise me
I've created a remote JMS client which is using a third party transaction manager to manage an XA global transaction consisting of many JMS Queue from various WLS servers.
My problem comes when I try to gain an XAResource from the underlying JMS Queues (needed to enlist them in the overall transaction).
I take an javax XAQueueSession object which points to a JMS Queue on a WLS 8.1 server and try to invoke the .getXAResource() method to produce the javax XAResource. The problem is it keeps returning me a null pointer.
the creation of the XAQueueSession is built up in this manner
1.) Look up connectionFactory from context, cast to an XAQueueConnnectionFactory
2.) XAQueueConnnectionFactory produces an XAQueueConnection
3.) XAQueueConnection creates an XAQueueSession
4.) XAQueueConnection is then started
5.) XAQueueSession is used to gain an XAResource which produces a null pointer
Question
-=-=-=-=-=-=
1) Does WLS 8.1 support the Javax XAResource interface? if it does is it possible to get an XAResource object from the XAQueueSession?
Any comments on these quesions would be useful
Kind Regards
BarrySince WLS JMS is clustered, it's a little more complex, because once you start two-phase commit transactions, you need to always go back to the same server in the cluster to resolve them.
The best-documented way to do this is to use the weblogic.transaction package, which is part of the Javadocs found here:
http://e-docs.bea.com/wls/docs81/javadocs/index.html
You need to call the following method from the weblogic.transaction package:
TxHelper.getClientInterposedTransactionManager()
This takes a JNDI InitialContext, and also a server name. Once you "prepare" a transaction, you'll have to go back to that server to commit it or roll it back.
The InterposedTransactionManager object that's returned represents the JTA transaction manager on the server that you named. You can call "getXAResource" on it to get the XAResource that you'll need.
You will also want to route your JMS calls from your client through the server that you got the transaction manager for. If you don't have a cluster, this is pretty simple. If you have a cluster, then you should create a JMS ConnectionFactory that's targeted to a single server, so that your client calls and your XA calls go to the same node in the cluster.
The folks on the JTA newsgroup, or BEA Support, should be able to help you with the details if things don't work out, but those are the basics.
Maybe you are looking for
-
HP Photosmart C4580 All-In-One Mac OSX 10.5
My printer no longer works as a printer, it will copy and scan but will not print. I rebooted several times both printer and computer, no change. Then I deleted the printer and added it back, and no success, the printer is gone. I used the CD to rein
-
Home Hub 3. Constant connectivity loss. Event log ...
Trying to get any kind of service out of my BT Infinity provision nowadays is like trying to arrange a tsunami in a desert. Time after time after time after time, the Internet is working normally but then a page refuses to refresh and attempts to ope
-
Error message - please help! "This copy of iTunes will expire in 113 hours"
Hello, I opened up iTunes today and received this popup which said "This copy of iTunes will expire in 113 hours". I have never seen anything like this and have no idea why. I only ever use iTunes on my one laptop. I use Leopard and have iTunes versi
-
Acrobat X Pro Mac 10.1.4 crash endlessly
This went to wrong Forum before Sorry but this is very annoying. Where can I get support for this? I have sent in numerous crash logs, re-installed repeatedly, tried to use Time Machine all to no avail. Which aprt of Adobe Support deals with this ple
-
Hi! I'm looking for a solution to open PPT/PPS files. I *don't* want to use LibreOffice (and even less MS Office with wine). I've been googling for some app that converts PPS -> PDF, since I don't mind creating a short script to let me see and PP{S,T