When using JBoss 5.1 with a SAS 9.3 deployment, and if multiple SAS Server instances exist, then the following error might be found in the JBoss server.log:
Stateful service processing was unable to find an object matching the passed id:
scopedTarget.sas.svcs.statefulServiceHolderc78897db-fa8b-494b-b6ba-968e43cfdd91.
It is likely the backing session timed out or was otherwise destroyed.
Or the object was previously deleted by the client.
An example location for this log is: "JBoss dir\jboss-5.1.0.GA\server\SASServer[N]\log\server.log"
Follow these steps to fix this error on your operating system.
UNIX:
Make a backup copy of each SASServer[n].sh script before proceeding.
1. Edit the SASServer[n].sh scripts in the jboss/bin directory.
2. In the script, add this option to the JAVA_OPTS settings:
-Dorg.apache.catalina.JSESSIONID=JSESSIONID_SASServer[N]
For example, for SASServer11 add this line to the list of java options:
-Dorg.apache.catalina.JSESSIONID=JSESSIONID_SASServer11
3. Repeat steps 1 and 2 for the other SASServer.sh scripts (using <n> in place of "11" in the above example).
4. Restart all JBoss SASServer instances.
Here is an example stop and start order.
You need to stop in this order:
SASServer11
SASServer8
SASServer2
SASServer1
Be sure to start in this order, and do so after confirming that the previous servers are started:
SASSever1 (wait for started in... message in the server.log before starting sasserver2)
SASServer2(wait for started in... message in the server.log before starting sasserver8)
SASServer8(wait for started in... message in the server.log before starting sasserve11)
SASServer11
Windows:
These instructions apply if you are running as a Windows Service. If you are not running as a Windows Service, then you need to edit the SASServer[N].bat found in the bin directory. Edit the bat file by updating the JAVA_OPTS information. See the UNIX instructions above for more information.
Make a a backup copy of each wrapper.conf script before proceeding
1. Edit the wrapper.conf file in "JBoss dir\jboss-5.1.0.GA\server\SASServer[N]".
2. Locate the section "# Java Additional Parameters" in the file.
3. Add the following line to the bottom of the list, making sure to increment the number by 1 from the line above.
wrapper.java.additional.xx=-Dorg.apache.catalina.JSESSIONID=JSESSIONID_SASServer[N]
Using SASServer11 as an example, the line should be as follows:
wrapper.java.additional.39=-Dorg.apache.catalina.JSESSIONID=JSESSIONID_SASServer11
4. Repeat steps 1-3 for the other SASServer<n>.sh scripts (using <n> in place of "11" in the above example).
5. Restart all JBoss SASServer instances.
Here is an example stop and start order:
You need to stop in this order:
SASServer11
SASServer8
SASServer2
SASServer1
Be to start in this order, and do so after confirming that the previous servers are started:
SASSever1 (wait for started in... message in the server.log before starting sasserver2)
SASServer2(wait for started in... message in the server.log before starting sasserver8)
SASServer8(wait for started in... message in the server.log before starting sasserve11)
SASServer11
Operating System and Release Information
SAS System | JBoss Application Server | Microsoft® Windows® for x64 | 5.1.1 | 5.1.1 | 9.3 TS1M0 | 9.3 TS1M1 |
Microsoft Windows Server 2003 for x64 | 5.1.1 | 5.1.1 | 9.3 TS1M0 | 9.3 TS1M1 |
Microsoft Windows Server 2008 for x64 | 5.1.1 | 5.1.1 | 9.3 TS1M0 | 9.3 TS1M1 |
Windows 7 Enterprise x64 | 5.1.1 | 5.1.1 | 9.3 TS1M0 | 9.3 TS1M1 |
Windows 7 Professional x64 | 5.1.1 | 5.1.1 | 9.3 TS1M0 | 9.3 TS1M1 |
Windows 7 Ultimate x64 | 5.1.1 | 5.1.1 | 9.3 TS1M0 | 9.3 TS1M1 |
Windows Vista for x64 | 5.1.1 | 5.1.1 | 9.3 TS1M0 | 9.3 TS1M1 |
64-bit Enabled AIX | 5.1.1 | 5.1.1 | 9.3 TS1M0 | 9.3 TS1M1 |
64-bit Enabled Solaris | 5.1.1 | 5.1.1 | 9.3 TS1M0 | 9.3 TS1M1 |
HP-UX IPF | 5.1.1 | 5.1.1 | 9.3 TS1M0 | 9.3 TS1M1 |
Linux for x64 | 5.1.1 | 5.1.1 | 9.3 TS1M0 | 9.3 TS1M1 |
Solaris for x64 | 5.1.1 | 5.1.1 | 9.3 TS1M0 | 9.3 TS1M1 |
*
For software releases that are not yet generally available, the Fixed
Release is the software release in which the problem is planned to be
fixed.