Weblogic 7.0 sp1 cluster - session replication problem
Hi,
I have installed Weblogic 7.0 sp2 on Win NT. To test clustering
feature, I have installed one admin server and added two managed
servers. All are running on same box. I could deploy web application
to the cluster. Connection pools and every other resource is working
well with the cluster. However I couldn't get session replication to
work. I have modified web app descriptor, and set 'persistent store
type' to "replicated".
I accessed application from one managed server, in the middle of
session I modified the port number in the URL to point to other
managed server. It looks like second managed server has no idea of
that session, my app fails because of this.
Could you please help me out in this, Do I need to do any thing in
addition to the above. I couldn't find much in the BEA manual..
Thanks
Rao
For Web application like servlets/JSP, it is better to put one web server as proxy
plugin before your two managed servers and access your application through web
proxy. (You need set session as in-memory replicated either in weblogic.xml or
by console editor). Otherwise, you need record the session cookie from the first
serevr and send the cookie to the second server (not sure if it works). To access
EJB/JMS, use cluster URL like t3://server1:port1,server2:port2.
[email protected] (Rao) wrote:
>Hi,
>
>I have installed Weblogic 7.0 sp2 on Win NT. To test clustering
>feature, I have installed one admin server and added two managed
>servers. All are running on same box. I could deploy web application
>to the cluster. Connection pools and every other resource is working
>well with the cluster. However I couldn't get session replication to
>work. I have modified web app descriptor, and set 'persistent store
>type' to "replicated".
>
>I accessed application from one managed server, in the middle of
>session I modified the port number in the URL to point to other
>managed server. It looks like second managed server has no idea of
>that session, my app fails because of this.
>
>
>Could you please help me out in this, Do I need to do any thing in
>addition to the above. I couldn't find much in the BEA manual..
>
>
>Thanks
>Rao
Similar Messages
-
HTTP Session replication problem
Hi all,
After 3 days trying to make the http session replication work in my cluster is time to ask some help.
I´m trying to make a simple application (only a servlet) simulate a http session replication.
I´ve investigated all the possible problems that i encountered in google :
Here is my multicast tests :
SERVER 1
D:\>java -cp d:\bea\weblogic92\server\lib\weblogic.jar utils.MulticastTest -N SE
RVER1 -A 237.0.0.1 -p 12809
***** WARNING ***** WARNING ***** WARNING *****
Do NOT use the same multicast address as a running WLS cluster.
Starting test. Hit any key to abort
Using multicast address 237.0.0.1:12809
Will send messages under the name SERVER1 every 2 seconds
Will print warning every 600 seconds if no messages are received
I (SERVER1) sent message num 1
I (SERVER1) sent message num 2
Received message 2 from SERVER1
I (SERVER1) sent message num 3
Received message 3 from SERVER1
I (SERVER1) sent message num 4
Received message 4 from SERVER1
I (SERVER1) sent message num 5
Received message 5 from SERVER1
I (SERVER1) sent message num 6
Received message 6 from SERVER1
I (SERVER1) sent message num 7
Received message 7 from SERVER1
I (SERVER1) sent message num 8
Received message 8 from SERVER1
I (SERVER1) sent message num 9
Received message 9 from SERVER1
I (SERVER1) sent message num 10
Received message 10 from SERVER1
Received message 11 from SERVER1
I (SERVER1) sent message num 11
I (SERVER1) sent message num 12
Received message 12 from SERVER1
I (SERVER1) sent message num 13
Received message 13 from SERVER1
Received message 14 from SERVER1
I (SERVER1) sent message num 14
I (SERVER1) sent message num 15
Received message 15 from SERVER1
I (SERVER1) sent message num 16
Received message 16 from SERVER1
SERVER 2
D:\>java -cp d:\bea\weblogic92\server\lib\weblogic.jar utils.MulticastTest -N SE
RVER2 -A 237.0.0.1 -p 12809
***** WARNING ***** WARNING ***** WARNING *****
Do NOT use the same multicast address as a running WLS cluster.
Starting test. Hit any key to abort
Using multicast address 237.0.0.1:12809
Will send messages under the name SERVER2 every 2 seconds
Will print warning every 600 seconds if no messages are received
I (SERVER2) sent message num 1
I (SERVER2) sent message num 2
Received message 2 from SERVER2
I (SERVER2) sent message num 3
Received message 3 from SERVER2
I (SERVER2) sent message num 4
Received message 4 from SERVER2
I (SERVER2) sent message num 5
Received message 5 from SERVER2
I (SERVER2) sent message num 6
Received message 6 from SERVER2
I (SERVER2) sent message num 7
Received message 7 from SERVER2
I (SERVER2) sent message num 8
Received message 8 from SERVER2
I (SERVER2) sent message num 9
Received message 9 from SERVER2
I (SERVER2) sent message num 10
Received message 10 from SERVER2
I (SERVER2) sent message num 11
Received message 11 from SERVER2
I (SERVER2) sent message num 12
Received message 12 from SERVER2
Weblogic.XML descriptor
<session-descriptor>
<session-param>
<param-name>PersistentStoreType</param-name>
<param-value>replicated</param-value>
</session-param>
</session-descriptor>
CODE of the Servlet
HttpSession session = request.getSession();
String sessionIdentif = (String)session.getAttribute("SESSIONIDENTIF");
boolean boolNewSession = true;
if(sessionIdentif == null) {
session.setAttribute("SESSIONIDENTIF", "1234567890");
} else
boolNewSession = false;
As you can see the object that i put in session is a String, so Serializable....
All the requirements are validated (i think...) but it still not working ... i get the SESSION ID : WvHQMKzBh9T35BPhGJxyhQtGks5Q3qJmxnJwGn8mn7V24FM92cnh!949557342! NONE !1284141857480
And the NONE said that the session isn´t replicated.
Any idea what´s wrong with my try of getting http session replication working??
cheers,Hi,
Thanks for your help.
I´ve tried your application with your proxy application but still no work...
I´m getting :
####<13/Set/2010 15H59m BST> <Debug> <Replication> <DST01VS51> <VIACTT2> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1284389948055> <000000> <Creating primary 1678977133045201960>
####<13/Set/2010 15H59m BST> <Debug> <ReplicationDetails> <DST01VS51> <VIACTT2> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1284389948055> <000000> <Unable to create secondary for 1678977133045201960 on null>
####<13/Set/2010 15H59m BST> <Debug> <ReplicationDetails> <DST01VS51> <VIACTT2> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1284389948181> <000000> <Unable to create secondary for 1678977133045201960 on null>
In my early post i forgot to mention that i´m using an Apache 2.2 in the front-end with Weblogic 9.2 (cluster).
What is happening in this weblogic configuration so that this session replication don´t work.
cheers, -
Hi,
CFMX 7.01 MULTISERVER:
I am facing a problem, session are not replicating on two CF
instances on same server. Below is Jrun log file error detail
30/05 17:18:10 error Setup of session replication failed.
[1]java.rmi.RemoteException: The web application
'cfusion.ear#cfusion.war' could not be found to accept sessions for
replication.
at
jrun.servlet.session.SessionReplicationService.replicate(SessionReplicationService.java:8 0)
at sun.reflect.GeneratedMethodAccessor51.invoke(Unknown
Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at sun.rmi.server.UnicastServerRef.dispatch(Unknown Source)
at sun.rmi.transport.Transport$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native
Method)
at sun.rmi.transport.Transport.serviceCall(Unknown Source)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unknown
Source)
at
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(Unknown
Source)
at java.lang.Thread.run(Unknown Source)
CFMX 7.01 MULTISERVER:
My set-up, installed as multiserver. create new instance from
CF Admin. Cluster them from Jrun Admin. I followed almost all
instructions from live doc, and also help from other blogs.
So far i could not findout why session can not replicate on
same machine.
Is any body have idea about above error.
Thanks for your help in-advanceIn my config.xml, I have:
<cluster>
<name>MyCluster</name>
<cluster-address/>
<default-load-algorithm>round-robin</default-load-algorithm>
<cluster-messaging-mode>unicast</cluster-messaging-mode>
<frontend-host>192.168.6.6</frontend-host>
<frontend-http-port>80</frontend-http-port>
<frontend-https-port>443</frontend-https-port>
</cluster>
I already posted my weblogic.xml -
Apache + 2 Tomcats session replication problem.
Greetings everyone.
Before stating the problem, let me explain how my environment is set.
I have two machines. One (PC1) running Apache (HTTP server 2.0.58)
and one instance of Tomcat (5.0.28) and another machine (PC2) with
another instance of Tomcat(5.0.28).
The Apache server
It is configured to handle static content, to redirect dynamic content to a
Tomcat instance through AJP 1.3 connector.
This process is done through the mod_jk and the workers.properties
The workers.properties file is configured to have sticky_session = True
so it assigns a SESSION_ID to the same Tomcat it was first assigned.
The workers.properties file is configured to have
sticky_session_force = True so if the Tomcat the SESSION_ID was
assigned is not available, the server answers with a 500 error.
The Tomcat servers
Both have only the AJP 1.3 connector enabled
Both have the Cluster tag from the server.xml file uncommented
and the useDirtyFlag flag set to false, for not to allow SESSION
replication between Tomcats.
The workers.properties file
workers.apache_log=C:/Apache2/logs
workers.tomcat_home=C:/Tomcat5
workers.java_home=C:/j2sdk1.4.2_13
ps=/
#Defining workers -----------------------------
worker.list=balancer,jkstatus
#Defining balancer ---------------------------
worker.balancer.type=lb
worker.balancer.balance_workers=tel1, tel2
worker.balancer.sticky_session=True
worker.balancer.sticky_session_force=True
worker.balancer.method=B
worker.balancer.lock=O
#Defining status -----------------------------
worker.jkstatus.type=status
worker.jkstatus.css=/jk_status/StatusCSS.css
#Workers properties ---------------------------
worker.tel1.type=ajp13
worker.tel1.port=8009
worker.tel1.host=127.0.0.1
worker.tel1.lbfactor=1
worker.tel1.socket_keepalive=False
worker.tel1.socket_timeout=30
worker.tel1.retries=20
worker.tel1.connection_pool_timeout = 20
#worker.tel1.redirect=tel2
worker.tel1.disabled=False
worker.tel2.type=ajp13
worker.tel2.port=8009
worker.tel2.host=199.147.52.181
worker.tel2.lbfactor=1
worker.tel2.socket_keepalive=False
worker.tel2.socket_timeout=30
worker.tel2.retries=20
worker.tel2.connection_pool_timeout = 20
#worker.tel2.redirect=tel1
worker.tel2.disabled=False
THE PROBLEM
I open a browser in the jk-status page to see how the Tomcat instances are
working, and both are working fine: Stat -> OK, now as the
loadbalancing factor is 1 on both Tomcats, an even alternating session
distribution is set.
While this browser is open to keep an eye on the status, I open a new
browser (B1)to connect to my Web Application, Apache answers
correctly and gives me a SESSION_ID for Tomcat instance 1 [both
instances are OK], if I make a simple refresh, my SESSION_ID is still the
same so I'm assigned to Tomcat instance 1 but this time I get an
ERROR 503 - Service unavailable but looking at the status of the
Tomcat instances both instances are still OK, no-one is down. And it
stays throwing this error for as many refreshes i do.
Now, I open a new browser (B2)and do the same process as before,
as expected, Apache now gives me a SESSION_ID for Tomcat instance 2,
repeating the same refreshing process, the error is thrown again, but still at
the jk-status page, both instances are fine.
Without closing these windows, I make a new refresh try on B1 and
even though the jk-status says both Tomcat instances are OK, the error
is still thrown. I open a third one (B3), and Apache again, correctly
gives me a new SESSION_ID for Tomcat instance 1 and answers
correctly on the first call. But once again if i repeat the refreshing process, the
error is thrown again.
Note: Using a different resolution to always keep and eye on the
instances status and using a refresh rate of 1 second for status, both
servers always were OK.
So the main problem is that somehow when the session is replicated
to the same tomcat, Apache confuses and thinks it is not available, when
asking it through the jk-status it tells it is OK
I've been trying different configurations with both Apache and Tomcat,
but there must be something missing since I don't get it to work correctly
Thanks in advance for all your helping comments.
- @alphazygmaWhew... that was quite an answer... definitely is going to help him a lot. Yeah any n00b by now should know how to use google, but that's not the point in this forums, here we are to help each other. and wether you like it or not many of us deploy applications to tomcat and stumble on this. So dont try to be cool posting this kind of answers like google this or google that if you dont have an answer please dont comment you will appear to be more noobish than you aparently are.
Well enough talking.
I found the following useful: (it comes in the server.xml of the tomcat configuration)
<!-- You should set jvmRoute to support load-balancing via JK/JK2 ie :
<Engine name="Standalone" defaultHost="localhost" debug="0" jvmRoute="jvm1">
-->
Enabling that entry on both machines should be enough.
Aparently the problem is not with apache. is with tomcat since it can't retain the session apache gives.
more information in the Tomcat help at:
http://tomcat.apache.org/tomcat-5.0-doc/balancer-howto.html#Using%20Apache%202%20with%20mod_proxy%20and%20mod_rewrite -
In-memory http session replication problem
Hi All ,
I'm testing my cluster configuration with bea's example for session(http) replication,however
when my cluster runs in one machine everything works fine ,if I run managed server
from other host session replication does not occure.
(I hit the firs ManagedServer with my browser,create session and than hit directly
the second managed server)
I've made a test which show that multicast I've setup among hosts is available,so
this is not the case.
(bind multicast sockets from two hosts and than send some data to it to see if
both get the packag)
Info logs from managed server's console shows that everythings work fine when
startng the cluster - detects Peer Lost,and Peer Join.
My cluster addres was setup as ip1:port1,ip2:port2.
I will apricate any opinion, because we are stuck.
Vladislav
Hi All,
10x Sunna , I figured the problem which actually was a metter of blindness :-)
was that I did't make the request throught load-balancer and the coockies were
from different hosts,in view of browser they differs.
Sunna <[email protected]> wrote:
>Session replication uses IP sockets not multicast. Is there a firewall
>or something that could be blocking that? See:
>
>http://e-docs.bea.com/wls/docs81/cluster/features.html#1031598
-
WS7 cluster session replication
Now that my WS7 cluster is up and running, I'm attempting to deploy a simple JSF webapp that incorporates session replication between the nodes in my cluster.
I've followed the instructions in the WS7 admin guide to enable session replication, and I've added the following to my sun-web.xml deployment descriptor:
<session-config>
<session-manager persistence-type="replicated"/>
</session-config>The first problem I discovered was that my JSF managed bean was not serializable, so I fixed that. Now, however, when I load the initial page in my app, I am getting an NPE that looks like it is coming from within the WS7 session replication code:
[23/Dec/2009:08:46:51] warning ( 3692): for host 172.16.2.47 trying to GET /sessionTest/index.jsf while trying to GET /sessionTest/, service-j2ee reports: executePhase(RENDER_RESPONSE 6,com.sun.faces.context.FacesContextImpl@2de69e99) threw exception
javax.faces.FacesException
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:135)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:398)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:277)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:255)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:188)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:586)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:556)
at com.sun.web.replication.session.SessionLockingStandardPipeline.invoke(SessionLockingStandardPipeline.java:71)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:187)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:586)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:556)
at com.sun.webserver.connector.nsapi.NSAPIProcessor.service(NSAPIProcessor.java:160)
Caused by: ClientAbortException: java.io.IOException: WEB8001: Write failed
at org.apache.coyote.tomcat5.OutputBuffer.realWriteBytes(OutputBuffer.java:385)
at org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:404)
at org.apache.coyote.tomcat5.OutputBuffer.doFlush(OutputBuffer.java:334)
at org.apache.coyote.tomcat5.OutputBuffer.flush(OutputBuffer.java:313)
at org.apache.coyote.tomcat5.CoyoteResponse.flushBuffer(CoyoteResponse.java:622)
at com.sun.webserver.connector.nsapi.NSAPIResponse.flushBuffer(NSAPIResponse.java:127)
at org.apache.coyote.tomcat5.CoyoteResponseFacade.flushBuffer(CoyoteResponseFacade.java:291)
at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:203)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
... 14 more
Caused by: java.io.IOException: WEB8001: Write failed
at com.sun.webserver.connector.nsapi.NSAPIResponseStream.doWrite(NSAPIResponseStream.java:61)
at org.apache.coyote.Response.doWrite(Response.java:575)
at org.apache.coyote.tomcat5.OutputBuffer.realWriteBytes(OutputBuffer.java:380)
... 22 more
[23/Dec/2009:08:46:51] warning ( 3692): for host 172.16.2.47 trying to GET /sessionTest/index.jsf while trying to GET /sessionTest/, service-j2ee reports: REPL0080: Received exception while reading session from store [{0}]
java.lang.NullPointerException
at com.sun.web.replication.session.LWSFPersistentManager.doRead(LWSFPersistentManager.java:162)
at com.sun.web.replication.session.LWSFValve.invoke(LWSFValve.java:31)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:556)
at com.sun.web.replication.session.SessionLockingStandardPipeline.invoke(SessionLockingStandardPipeline.java:71)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:187)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:586)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:556)
at com.sun.webserver.connector.nsapi.NSAPIProcessor.service(NSAPIProcessor.java:160)I thought that perhaps once the session was created, I would stop seeing this error. It isn't exactly the same, but I am still seeing an NPE even after the session has been created:
[23/Dec/2009:08:47:33] warning ( 3692): for host 172.16.2.47 trying to POST /sessionTest/index.jsf, service-j2ee reports: REPL0080: Received exception while reading session from store [{0}]
java.lang.NullPointerException
at com.sun.web.replication.session.LWSFPersistentManager.doRead(LWSFPersistentManager.java:162)
at com.sun.web.replication.session.LWSFValve.invoke(LWSFValve.java:31)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:556)
at com.sun.web.replication.session.SessionLockingStandardPipeline.invoke(SessionLockingStandardPipeline.java:71)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:187)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:586)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:556)
at com.sun.webserver.connector.nsapi.NSAPIProcessor.service(NSAPIProcessor.java:160)Any idea what's going wrong? Is it something I've done?
I can give you the code for my webapp if you need it.
Thanks,
Bill1. First try deploying your application without having this parameter, This is need only when you need session replication at web application level not at web server level..
2. Try with this option as well:
<sun-web-app>
<session-config>
<session-manager persistence-type="replicated">
</session-manager>
</session-config>
</sun-web-app> -
WL 7.0 sp4 session replication problem
These are the configuration:
* BEA WebLogic Server 7.0 SP4
* Domain : mydomain
* Machine:
machine1 (Windows 2003)
machine2 (Windows 2000)
* Admin Server :
myserver (on "machine1")
* Managed Server :
server1 (on "machine1") , replication group: groupA , prefered secondary replication
group: groupB
server2 (on "machine2") , replication group: groupB , prefered secondary replication
group: groupA
proxy (on "machine2")
* Cluster :
cluster-1 (contains "server1" and "server2")
I've deployed an application (one EJB and some JSP, just for testing purpose)
to "cluster-1".
And I also deployed a "weblogic.servlet.proxy.HttpClusterServlet" application
to "proxy",
which is configured to connect "server1" and "server2".
Now I open a browser and browse to "proxy" and I can see th result from "server1"
or "server2".
But when I shutdown the server which my current session is on, I was redirected
to another server
but the session is not replicated.
Did you set the replicated option for your webapp. Did you change the
cookiename by anychance?
sree
"patrick" <[email protected]> wrote in message news:40e53734$1@mktnews1...
>
> These are the configuration:
>
> * BEA WebLogic Server 7.0 SP4
> * Domain : mydomain
> * Machine:
> machine1 (Windows 2003)
> machine2 (Windows 2000)
> * Admin Server :
> myserver (on "machine1")
> * Managed Server :
> server1 (on "machine1") , replication group: groupA , prefered
secondary replication
> group: groupB
> server2 (on "machine2") , replication group: groupB , prefered
secondary replication
> group: groupA
> proxy (on "machine2")
> * Cluster :
> cluster-1 (contains "server1" and "server2")
>
> I've deployed an application (one EJB and some JSP, just for testing
purpose)
> to "cluster-1".
> And I also deployed a "weblogic.servlet.proxy.HttpClusterServlet"
application
> to "proxy",
> which is configured to connect "server1" and "server2".
>
> Now I open a browser and browse to "proxy" and I can see th result from
"server1"
> or "server2".
> But when I shutdown the server which my current session is on, I was
redirected
> to another server
> but the session is not replicated.
-
Weblogic 6.0 SP1 default server starting problem
Hi
After I successfully installed WLS6.0SP1 on solaris, I was trying to run the default
server as mentioned in your post-installation tasks. I am getting the following
error:
<Apr 11, 2001 12:11:33 PM PDT> <Error> <HTTP> <[Default WebApp] failure extracting
WAR classes java.io.FileNotFoundException: /var/tmp/WEB-INF/_tmp_war_myserver_myserver_wl_ma
nagement_internal2/weblogic/management/servlet/BootstrapServlet.class (Permission
denied)
at java.io.FileOutputStream.open(Native Method)
However I can see the index page at port 7001 and also see the console thro' the
browser.
So I am not sure if or not I should ignore the above problem
Please let me know
thanxThis solution was emailed to me by WebLogic and it works.
Yes, I do have a fix for your issue. You received that
exception because there was an attempt to run multiple
instances in a single machine.
By default, WLS 6.0 creates some temporary files
in system swap space at /tmp/WEB-INF. The becomes
a conflict if multiple users try to fire up WLS instances.
Please add the following parameters into your startup
script.
Example:
-Djava.io.tmpdir=/var/tmp/userid property
java -ms64.... -classpath $CLASSPATH ..... -Djava.io.tmpdir=/export/home/chunan/tmp....
For production, please keep the default.
If you still need to run multiple instances for production,
you may point it back to /tmp (system swap) to reduce
hard disk delay.
Chunan
BEA Support Team
"Santosh Joglekar" <[email protected]> wrote:
>
Hi
After I successfully installed WLS6.0SP1 on solaris, I was trying to
run the default
server as mentioned in your post-installation tasks. I am getting the
following
error:
<Apr 11, 2001 12:11:33 PM PDT> <Error> <HTTP> <[Default WebApp] failure
extracting
WAR classes java.io.FileNotFoundException: /var/tmp/WEB-INF/_tmp_war_myserver_myserver_wl_ma
nagement_internal2/weblogic/management/servlet/BootstrapServlet.class
(Permission
denied)
at java.io.FileOutputStream.open(Native Method)
However I can see the index page at port 7001 and also see the console
thro' the
browser.
So I am not sure if or not I should ignore the above problem
Please let me know
thanx -
Session in-memory replication problem
Hi,
I am running into some cluster HttpSession replication problems. Here is
the scenario where replication fails (all servers mentioned here are a
part of a cluster).
1a - 2 Weblogic servers (A&B) are running - no users logged in,
2a - user logs in and a new session in server A is created.
3a - after several interactions, server A is killed.
4a - after user makes susequent request, Weblogic correctly fails over
to server B
Problem: Not entire session data is replicated. The authentication info
seems to
be replicated correctly but there are some collections in the session of
server A
that did not make it to the session in server B.
The interesting part is this: If there is only one server A running to
begin with and a user
interacts with it for a while and only then server B is started, when
after server B starts up
server A dies - the entire session (which is exactly the same as in the
failing scenario) is
corretly replicated in B, including collections that were missing in the
failing scenario.
How can this be possible ????
Thanks for any info on this one - it really puzzles me.
Andrew
Yes, you are on the right track. Everytime you modify the object you should call
putValue. We will make it more clear in the docs.
- Prasad
Andrzej Porebski wrote:
> Everything is Serilizable. I get no exceptions. I did however read some old
> posts regarding
> session replication and I hope I found an answer. It basically seems to boil
> down to what
> triggers session sync-up between servers. In my case , I store an object into
> session and
> later on manipulate that object directly wihotu session involvment and the
> results of those manipulations
> are not replicated - no wonder if HttpSession's putValue method is the only
> trigger.
> Am i on the right track here?
>
> -Andrew
>
> Prasad Peddada wrote:
>
> > Do you have non serializable data by any chance?
> >
> > - Prasad
> >
> > Andrzej Porebski wrote:
> >
> > > Hi,
> > > I am running into some cluster HttpSession replication problems. Here is
> > > the scenario where replication fails (all servers mentioned here are a
> > > part of a cluster).
> > > 1a - 2 Weblogic servers (A&B) are running - no users logged in,
> > > 2a - user logs in and a new session in server A is created.
> > > 3a - after several interactions, server A is killed.
> > > 4a - after user makes susequent request, Weblogic correctly fails over
> > > to server B
> > >
> > > Problem: Not entire session data is replicated. The authentication info
> > > seems to
> > > be replicated correctly but there are some collections in the session of
> > > server A
> > > that did not make it to the session in server B.
> > >
> > > The interesting part is this: If there is only one server A running to
> > > begin with and a user
> > > interacts with it for a while and only then server B is started, when
> > > after server B starts up
> > > server A dies - the entire session (which is exactly the same as in the
> > > failing scenario) is
> > > corretly replicated in B, including collections that were missing in the
> > > failing scenario.
> > >
> > > How can this be possible ????
> > >
> > > Thanks for any info on this one - it really puzzles me.
> > >
> > > Andrew
> >
> > --
> > Cheers
> >
> > - Prasad
>
> --
> -------------------------------------------------------------
> Andrzej Porebski
> Sailfish Systems, Ltd. Phone 1 + (212) 607-3061
> 44 Wall Street, 17th floor Fax: 1 + (212) 607-3075
> New York, NY 10005
> -------------------------------------------------------------
-
Http session replication fails in cluster
Hello everybody.
I have some problems with HTTP session replication in WebLlogic cluster environment. I have a cluster with 2 nodes and application deployed there. Application is configured with:
<session-param>
<param-name>PersistentStoreType</param-name>
<param-value>replicated</param-value>
</session-param>
in weblogic.xml
WebLogic plug-in for Apache webserver is configured properly as described in documentation.
But when I try to make experiment to enter the application, make some activities, look in console where I was redirected by apache proxy and manually shut down the node where request was sent, I loose my HTTP session with all data there (all the beans stored in session are Serializable). Replication doesn't work correctly. May be I've missed something in configuration? How can I configure my application to provide correctness session replication?
Thanks for advice.
ThanksThanks for response!
I'm using WebLogic 8.1 SP 4 and configured Apache proxy as described in documentation for load balancing. The only section I have in httpd.conf is next:
<Location /HTTPClnt>
SetHandler weblogic-handler
</Location>
<IfModule mod_weblogic.c>
WebLogicCluster serv1:7541,serv2:7541
MatchExpression *.*
Debug ON
WLLogFile /www/tmp/global_proxy.log
WLTempDir "/www/tmp"
DebugConfigInfo On
KeepAliveEnabled ON
KeepAliveSecs 15
</IfModule>
<Location /myApp>
SetHandler weblogic-handler
WebLogicCluster serv1:7541,serv2:7541
</Location>and the string to include weblogic proxy module for apache:
LoadModule weblogic_module modules/mod_wl_20.soI've configured CookiesEnabled=true in weblogic.xml, but it didn't help. About session specification in httpd.conf - where can I read about that? I've just configured apache according to manual from here:
[url http://e-docs.bea.com/wls/docs92/plugins/apache.html]http://e-docs.bea.com/wls/docs92/plugins/apache.html
Thanks -
Using UMS on a Glassfish cluster - how to support session replication ?
Hello,
I have deployed the imqums.war in a Glassfish cluster but can not use the session replication.
The UMS uses sid as client session identifier. If the client session is is created on node 1, when the call hits the node 2 it gets:
com.sun.messaging.ums.service.UMSServiceException: javax.jms.JMSException: sid is not authenticated. Use login to get a new sid, expired/invalid sid=4-LTE2NTA5ODMzMTU=
at com.sun.messaging.ums.service.ClientPool.getClient(ClientPool.java:157)
at com.sun.messaging.ums.service.SendServiceImpl.commit(SendServiceImpl.java:244)
at com.sun.messaging.ums.service.UMSServiceImpl.commit(UMSServiceImpl.java:234)
at com.sun.messaging.ums.core.UMSServlet.doSimpleMessaging(UMSServlet.java:786)
at com.sun.messaging.ums.core.UMSServlet.doPost(UMSServlet.java:633)
Can you provide advise how to obtain session replication for UMS calls ?
Thank you,
CristinaThere is an example here,
http://wiki.eclipse.org/EclipseLink/Examples/JPA/CacheCoordination
It was run on WebLogic but should be runnable on Glassfish without too much effort. (if you port it, please submit your changes to the wiki or bugzilla). -
Problem with session replication???
Hi all,
I am new bee to weblogic . And I am using weblogic 9.2.
Iam facing some problem in the clustered environment.
I have created the cluster environement.
one cluster with two servers running in one machine.
And deployed the application in the two server (cluster environment)
While I hit my application at some point of time is going to null in the cluster environment but not in the stand alone environment.
Please help out regarding this,...
Thanks
ShaannThanks for your quick response..
I have given as
<session-descriptor>
<session-param>
<param-name>PersistentStoreType</param-name>
<param-value>replicated</param-value>
</session-param>
</session-descriptor>
as "memory" gi -
Flex session replication among cluster Help needed!
Hi,
I'am using Flex 3, LiceCycle Data Service 2.5.1, JBoss 4.2.1 in a web application. Our JBoss servers are in a cluster. We want to replicate Flex session among cluster, but it doesn't work. Did someone face issue with Flex session replication among application servers?
Thank you for your help
GerardGerard,<br /><br />You will need to cluster the LCDS 2.5.1 instances the same way you clustered <br />JBoss.<br /><br />Check out the "Configuring Data Services" chapter in the Admin guide:<br />http://livedocs.adobe.com/livecycle/es/sdkHelp/programmer/lcds/services_config_4.html<b r /><br />--<br />Tom Jordahl<br />Adobe<br /><br /><br /><[email protected]> wrote<br />> Hi,<br />><br />> I'am using Flex 3, LiceCycle Data Service 2.5.1, JBoss 4.2.1 in a web <br />> application. Our JBoss servers are in a cluster. We want to replicate Flex <br />> session among cluster, but it doesn't work. Did someone face issue with <br />> Flex session replication among application servers?<br />> Thank you for your help<br />><br />> Gerard
-
Weblogic 8.1 SP1 + Apache 2.0.46/44 Plugin Problem
Hi,
Im using apache 2.0.44/46 HTTP Server to proxy request
to my Weblogic 8.1 SP1 server. The HTTP server and
Weblogic server are running on two different machines
in a non clustered environment. I have copied
mod_wl_20.so available in /root/bea/weblogic81/server/lib/linux/i686/
into my apache_home/modules directory. The HTTP Server and the weblogic
server are installed in a linux system. The details of the machines are
as
follows:
processor : 0
vendor_id : GenuineIntel
cpu family : 15
model : 1
model name : Intel(R) Pentium(R) 4 CPU 1.60GHz
stepping : 2
cpu MHz : 1614.399
cache size : 256 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8
apic sep mtrr pge mca cmov pat pse36 clflush dts acpi
mmx fxsr sse sse2 ss ht tm
bogomips : 3224.37
My httpd.conf look something like this:
<VirtualHost *>
ServerAdmin [email protected]
ServerName 11.1.14.17
<IfModule mod_weblogic.c>
WebLogicHost WebLogicHost
WebLogicPort 7001
WLLocalIP 11.1.14.18
StatPath true
HungServerRecoverSecs 300
ConnectTimeoutSecs 5
WLLogFile log/weblogic.log
<Location />
DefaultFileName /xyz
WebLogicHost 11.1.14.18
WebLogicPort 7001
SetHandler weblogic-handler
</Location>
<Location /xyz
WebLogicHost 11.1.14.18
WebLogicPort 7001
SetHandler weblogic-handler
</Location>
</IfModule>
</VirtualHost>
After setting this up.. i have restarted the weblogic
server too.
When i try to access the url http://11.1.14.17 i get
the following error in the apache log
[Wed Feb 11 23:49:25 2004] [error] NO_RESOURCES: [os
error=99, line 1440 of ../nsapi/URL.cpp]: bind()
system call failed
The error message shown in the browser is as follows:
Failure of server APACHE bridge:
No backend server available for connection: timed out
after 15 seconds.
Please let me know how to get around this problem. Is
this a problem with the setup.
When i place the apache server in the same system
where my weblogic server is running, it works
perfectly fine.
One more question.. whats the difference between the mod_wl_20.so
available in the server/lib/linux directory and the one available in
the
bin directory?
thanks
-AjayHello
Have you got any solutions to your problem yet? We are getting same kind of problems
with WLS 8.1 SP1 and Apache 2.0.48. If you have any ideas please contact me at
[email protected]
Regards
Tommy Larsen
"Ajay" <[email protected]> wrote:
>
Hi,
Im using apache 2.0.44/46 HTTP Server to proxy request
to my Weblogic 8.1 SP1 server. The HTTP server and
Weblogic server are running on two different machines
in a non clustered environment. I have copied
mod_wl_20.so available in /root/bea/weblogic81/server/lib/linux/i686/
into my apache_home/modules directory. The HTTP Server and the weblogic
server are installed in a linux system. The details of the machines are
as
follows:
processor : 0
vendor_id : GenuineIntel
cpu family : 15
model : 1
model name : Intel(R) Pentium(R) 4 CPU 1.60GHz
stepping : 2
cpu MHz : 1614.399
cache size : 256 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8
apic sep mtrr pge mca cmov pat pse36 clflush dts acpi
mmx fxsr sse sse2 ss ht tm
bogomips : 3224.37
My httpd.conf look something like this:
<VirtualHost *>
ServerAdmin [email protected]
ServerName 11.1.14.17
<IfModule mod_weblogic.c>
WebLogicHost WebLogicHost
WebLogicPort 7001
WLLocalIP 11.1.14.18
StatPath true
HungServerRecoverSecs 300
ConnectTimeoutSecs 5
WLLogFile log/weblogic.log
<Location />
DefaultFileName /xyz
WebLogicHost 11.1.14.18
WebLogicPort 7001
SetHandler weblogic-handler
</Location>
<Location /xyz
WebLogicHost 11.1.14.18
WebLogicPort 7001
SetHandler weblogic-handler
</Location>
</IfModule>
</VirtualHost>
After setting this up.. i have restarted the weblogic
server too.
When i try to access the url http://11.1.14.17 i get
the following error in the apache log
[Wed Feb 11 23:49:25 2004] [error] NO_RESOURCES: [os
error=99, line 1440 of ../nsapi/URL.cpp]: bind()
system call failed
The error message shown in the browser is as follows:
Failure of server APACHE bridge:
No backend server available for connection: timed out
after 15 seconds.
Please let me know how to get around this problem. Is
this a problem with the setup.
When i place the apache server in the same system
where my weblogic server is running, it works
perfectly fine.
One more question.. whats the difference between the mod_wl_20.so
available in the server/lib/linux directory and the one available in
the
bin directory?
thanks
-Ajay -
Session Replication doesn't work when using a custom Unicast Channel
Hello!
After configure a WLS Cluster for an WebApp with session replication support enabled I faced some issues with cluster configuration.
My LAB env used for this configurations is:
One Solaris 10 SPARC box.
-- One WLS 11g (10.3.6) domain with:
---- 4 Managed servers:
---- Admin server
---- server-1
---- server-2
---- Proxy Server (HttpClusterServlet)
--- 1 Cluster composed by:
---- server-1
---- server-2In that setup I noticed if I define a custom network channel for servers ( server>protocols>channels ) in the cluster and set Cluster Messaging Mode as Unicast* in the Cluster config ( Cluster>Configuration>Messaging>Messaging Mode ), so the session state replication does not work.
When I enable the cluster replication debug for managed servers the following messages appears:
<> <> <1358966729933> <BEA-000000> <[roid:-1772481434088297851] Creating primary for application key /webapp>
####<Jan 23, 2013 4:45:29 PM BRST> <Debug> <ReplicationDetails> <de25503> <server-1> <[ACTIVE] ExecuteThread: '5' for queue: > 'weblogic.kernel.Default (self-tuning)'> <<ano
nymous>> <> <> <1358966729958> <BEA-000000> *<Has secondary servers? false>*
####<Jan 23, 2013 4:45:29 PM BRST> <Debug> <ReplicationDetails> <de25503> <server-1> <[ACTIVE] ExecuteThread: '5' for queue: >'weblogic.kernel.Default (self-tuning)'> <<ano
nymous>> <> <> <1358966729959> <BEA-000000> *<Current secondary server? null>*
####<Jan 23, 2013 4:45:29 PM BRST> <Debug> <Replication> <de25503> <server-1> <[ACTIVE] ExecuteThread: '5' for queue: >'weblogic.kernel.Default (self-tuning)'> <<anonymous>
<> <> <1358966729959> <BEA-000000> <[roid:-1772481434088297851] Unable to create secondary on null>
####<Jan 23, 2013 4:45:31 PM BRST> <Debug> <ReplicationDetails> <de25503> <server-1> <[ACTIVE] ExecuteThread: '5' for queue: >'weblogic.kernel.Default (self-tuning)'> After eliminate all possible issues with my webapp (serialization, weblogic descriptor configuration, etc) and try many cluster network configurations I noticed that this problem only occurs when I use Unicast for Cluster's Messaging.
At the end of the day I really would like to understand why the session replication only works for Cluster's Messaging using Multicast mode. I read a lot the WLS docs (specifically the cluster/network topics) [1][2], but I can't find an official explanation about this.
Can someone help me understand this behavior?
Many thanks.
[1] http://docs.oracle.com/cd/E15523_01/web.1111/e13701/network.htm
[2] http://docs.oracle.com/cd/E15523_01/web.1111/e13709/setup.htmI have Fluxbox started with Slim and .xinitrc. Dbus works only with:
exec ck-launch-session startfluxbox
you need run Openbox with ck-launch-session:
exec ck-launch-session openbox-session
Bye!!
Maybe you are looking for
-
Trying to navigate the screen without my mousepad. I have carpal tunnel and early stage arthritis and cannot repeatedly make the appropriate motions to scroll with two fingers. Is there a keyboard shortcut for scrolling up and down line by line or
-
Intermittent Bug when saving pdf files in Illustrator CS6
I save a pdf file in Illustrator CS6 with a specific art board size. When I open it in Acrobat the size is off. When our print's RIP's the file, it is off the same amount. I will re-open it in Illustrator and re-save it and just change the name, the
-
Could not convert from java interface to interface type wsdl ??
i have a problem wheni have a problem when i develop bpel using mediator and wire to ejb service. When the mediator wire to ejb service, i found the error : Could not convert from java interface to interface type wsdl.... How to solve the problem?
-
Problem finding video recieved through Bluetooth
I am using Lumia 525, I recently received 400 mb video file from my friend using Bluetooth. Firstly I am not able to find the file, maybe the video format is not supported or for some other reason. But in any case how do I remove this files ? I canno
-
I have been trying to find a solution for a problem I'm having sending video messages from my Samsung Galaxy Tab Lite. Every time I try to send a video message and click the record button it simply stops and give me an error message that says 'failed