Security Problem when call EJB in servlet:[Security:090398]Invalid Subject
Hi guys,
I have several years experience with Java and EJB developing,but still I cann't explain this problem although I already knew the fix...
Please,can anyone help me to explain why? Thanks very much!
Ok,the problem is when I call a remote EJB in one method ,that is everything about EJB is in one method,then everything is ok.But when I just return the
*remote service object from an helper class's static method, and call the service in servlet ,then I get java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[sundan076],which sundan076 is username login into the web application.*
The right way, call method directCall(param) ; The wrong way, call method staticToolCall(final Map param) .
public class EJBServletClient extends HttpServlet
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
this.doPost(request, response);
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException,
IOException
try
Map<String, String> param = new HashMap<String, String>();
param.put("CTS_CUSTOMER_ID", request.getParameter("CTS_CUSTOMER_ID"));
param.put("CTS_TASK_ID", request.getParameter("CTS_TASK_ID"));
param.put("SERIALNO", request.getParameter("SERIALNO"));
param.put("CUSTOMER_SERVICE_UM", request.getParameter("CUSTOMER_SERVICE_UM"));
Map result = this.directCall(param);
System.out.println(result);
} catch (Exception e)
e.printStackTrace();
throw new ServletException(e);
private Map directCall(Map param) throws Exception
Context context = null;
try
Properties p = new Properties();
p.put(Context.PROVIDER_URL, "t3://10.25.32.13:31256");
p.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
p.put(Context.SECURITY_PRINCIPAL, "username");
p.put(Context.SECURITY_CREDENTIALS, "password");
context = new InitialContext(p);
BizApplyServiceHome home = (BizApplyServiceHome) PortableRemoteObject.narrow(
context.lookup("ejb/rcs-css/BizApplyService"), BizApplyServiceHome.class);
BizApplyService bizApplyService = home.create();
return bizApplyService.modifyApplyCustomerInfo(param);
} finally
if (context != null)
context.close();
private Map staticToolCall(final Map param) throws Exception
BizApplyService bizApplyService = EJBTool.getBizApplyService();
return bizApplyService.modifyApplyCustomerInfo(param);
public class EJBTool
public static BizApplyService getBizApplyService() throws Exception
Context context = null;
try
Properties p = new Properties();
p.put(Context.PROVIDER_URL, "t3://10.25.32.13:31256");
p.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
p.put(Context.SECURITY_PRINCIPAL, "username");
p.put(Context.SECURITY_CREDENTIALS, "password");
context = new InitialContext(p);
BizApplyServiceHome home = (BizApplyServiceHome) PortableRemoteObject.narrow(
context.lookup("ejb/rcs-css/BizApplyService"), BizApplyServiceHome.class);
return home.create();
} finally
if (context != null)
context.close();
java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[sundan076]
at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:234)
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:348)
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:259)
at com.pingan.rcs.css.biz.service.remote.ejb.bizApplyService_u7jjbk_EOImpl_1032_WLStub.modifyApplyCustomerInfo(Unknown Source)
at com.pingan.pafax.web.EJBServletClient.staticToolCall(EJBServletClient.java:80)
at com.pingan.pafax.web.EJBServletClient.doPost(EJBServletClient.java:43)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3594)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2202)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2108)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1432)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
Caused by: java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[sundan076]
at weblogic.security.service.SecurityServiceManager.seal(SecurityServiceManager.java:835)
at weblogic.security.service.SecurityServiceManager.getSealedSubjectFromWire(SecurityServiceManager.java:524)
at weblogic.rjvm.MsgAbbrevInputStream.getSubject(MsgAbbrevInputStream.java:315)
at weblogic.rmi.internal.BasicServerRef.acceptRequest(BasicServerRef.java:875)
at weblogic.rmi.internal.BasicServerRef.dispatch(BasicServerRef.java:310)
at weblogic.rmi.cluster.ClusterableServerRef.dispatch(ClusterableServerRef.java:242)
at weblogic.rjvm.RJVMImpl.dispatchRequest(RJVMImpl.java:1138)
at weblogic.rjvm.RJVMImpl.dispatch(RJVMImpl.java:1020)
at weblogic.rjvm.ConnectionManagerServer.handleRJVM(ConnectionManagerServer.java:240)
at weblogic.rjvm.ConnectionManager.dispatch(ConnectionManager.java:882)
at weblogic.rjvm.MsgAbbrevJVMConnection.dispatch(MsgAbbrevJVMConnection.java:453)
at weblogic.rjvm.t3.MuxableSocketT3.dispatch(MuxableSocketT3.java:322)
at weblogic.socket.BaseAbstractMuxableSocket.dispatch(BaseAbstractMuxableSocket.java:298)
at weblogic.socket.SocketMuxer.readReadySocketOnce(SocketMuxer.java:915)
at weblogic.socket.SocketMuxer.readReadySocket(SocketMuxer.java:854)
at weblogic.socket.EPollSocketMuxer.dataReceived(EPollSocketMuxer.java:215)
at weblogic.socket.EPollSocketMuxer.processSockets(EPollSocketMuxer.java:177)
at weblogic.socket.SocketReaderRequest.run(SocketReaderRequest.java:29)
at weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:42)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:145)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:117)
Edited by: 993478 on 2013-3-12 下午8:40
I tried your way,it works! Still ,does anyone know why staticToolCall() raised exception?
By the way,here is the code as you suggested:
public class EJBServletClient extends HttpServlet
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException,
IOException
Context context = null;
try
Map<String, String> param = new HashMap<String, String>();
param.put("CTS_CUSTOMER_ID", request.getParameter("CTS_CUSTOMER_ID"));
param.put("CTS_TASK_ID", request.getParameter("CTS_TASK_ID"));
param.put("SERIALNO", request.getParameter("SERIALNO"));
param.put("CUSTOMER_SERVICE_UM", request.getParameter("CUSTOMER_SERVICE_UM"));
//Map result = this.staticToolCall(param);
Properties p = new Properties();
p.put(Context.PROVIDER_URL, "t3://10.25.32.13:31256");
p.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
p.put(Context.SECURITY_PRINCIPAL, "username");
p.put(Context.SECURITY_CREDENTIALS, "password");
context = new InitialContext(p);
Map result=EJBTool.modifyApplyCustomerInfo(context, param);
System.out.println(result);
} catch (Exception e)
e.printStackTrace();
throw new ServletException(e);
}finally
if (context != null)
try{context.close();} catch (NamingException e){e.printStackTrace();}
public class EJBTool
public static Map modifyApplyCustomerInfo(Context context, Map param) throws Exception
BizApplyServiceHome home = (BizApplyServiceHome) PortableRemoteObject.narrow(
context.lookup("ejb/rcs-css/BizApplyService"), BizApplyServiceHome.class);
BizApplyService bizApplyService = home.create();
Map result = bizApplyService.modifyApplyCustomerInfo(param);
return result;
}
Similar Messages
-
[Fwd: Security problem accessing MBeanServer from a servlet]
Reposting to Security and Servlet newsgroups.
-------- Original Message --------
Subject: Security problem accessing MBeanServer from a servlet
Date: 10 Feb 2004 13:02:09 -0800
From: Alain <[email protected]>
Reply-To: Alain <[email protected]>
Organization: BEA NEWS SITE
Newsgroups: weblogic.developer.interest.management
Hi,
I am trying to understand how WLS 7.0 secures a call to an MBean. Got
the following
scenario:
- I am in a servlet context
- I have created and registered an MBean with the WLS MBeanServer. Fine
so far
- Within the same call I can retrieve the MBean attributes. Fine so far
- I keep the MBeanServer reference in an object global to the servlet
context
The problem:
- When I do another request and try to use the cached MBeanServer
instance to
access the MBean, I get the following error:
weblogic.management.NoAccessRuntimeException: Access not allowed for
subject:
principals=[], on ResourceType ...
Any idea?
AlainPaulF <paulf@reply_in_newsgroup.com> wrote:
On 10 Feb 2004 13:02:09 -0800, Alain <[email protected]> wrote:
Hi,
I am trying to understand how WLS 7.0 secures a call to an MBean. Got
the following
scenario:
- I am in a servlet context
- I have created and registered an MBean with the WLS MBeanServer.Fine
so far
- Within the same call I can retrieve the MBean attributes. Fine sofar
- I keep the MBeanServer reference in an object global to the servlet
context
The problem:
- When I do another request and try to use the cached MBeanServer
instance to
access the MBean, I get the following error:
weblogic.management.NoAccessRuntimeException: Access not allowed for
subject:
principals=[], on ResourceType ...
Any idea?
AlainWhat ResourceType are you trying to access. From the Exception you're
trying to access it as an Anonymous user (principals=[]) and evidently
you're attempting to access something that is protected. I can't tell
what
from the snippet you've included.
Using M2, Opera's revolutionary e-mail client: http://www.opera.com/m2/
Thanks Paul for your reply.
You are right. I can access my custom MBeans if I am authenticated for example
as an Administrator. My problem is that I want any application to access this
MBean authenticated or not. I am trying to find how I could grant permission to
this MBean to everyone. Still searching.
Thanks. -
Security problem when signed applet dynamically load plugins
Hi!
I have one problem : "security problem when signed applet dynamically load plugins"
This is the scenario:
the main program [app.jar]
. contain applet and shared library (interface & implement of common class)
. it is signed and run normally on browser
. it can draw image loaded from other URL [ex] http://bp1.blogger.com/image.jpg
. the image loader is in the shared library
. dynamically load amazon.jar through URLClassLoader and reflection
the plugin [amazon.jar]
. search amazon product [ex] Harry Potter book
. draw image on applet
. use image loader from shared library, BUT CANNOT LOAD IMAGE
The question: "Why it cannot load image, because the image loader is in the shared library which has been signed and working?" I tried to sign the amazon.jar too, but it did not work.
Your reply would be very helpful. Thank you.
Sovannhello. i have create a signed applet for A.jar. A.jar include two package B and C. the main applet class is within B.
B need some classes in C to run the applet. but i got the error that class in package c are not found.
what shall i do? -
Error when call webservice on servlet
Hi All,
I'm having a problem when calling webservice inside the servlet on the WebLogic environment.
My code:
* Webservice:
package ws;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Date;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;
@WebService
public class getData {
public getData() {
super();
@WebMethod
public String getHello() {
return "HELLO HELLO";
private Connection getConn() throws NamingException, SQLException {
InitialContext ic = new InitialContext();
DataSource ds = (DataSource)ic.lookup("jdbc/hnxwebsite");
//System.out.println("POOL !!!!");
Connection con = ds.getConnection();
con.setAutoCommit(false);
return con;
@WebMethod
public String getIndexData(@WebParam(name="param") String param) {
StringBuffer sb = new StringBuffer();
String sql =
"Select * From idx_index_info iii where iii.index_code= ?";
Connection con = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
con = getConn();
pstmt = con.prepareStatement(sql);
pstmt.setString(1, param);
rs = pstmt.executeQuery();
int columnCount = rs.getMetaData().getColumnCount();
Object val;
while (rs.next()) {
for (int i = 1; i < columnCount; i++) {
//System.out.println(i);
val = rs.getObject(i);
if (val != null)
sb.append(val.toString() + "\n");
} catch (SQLException e) {
e.printStackTrace();
} catch (NamingException e) {
e.printStackTrace();
} finally {
try {
if (rs != null)
rs.close();
if (pstmt != null)
pstmt.close();
if (con != null)
con.close();
} catch (Exception e) {
e.printStackTrace();
String str = sb.toString();
int len = str.length();
//System.out.println("LENGTH >>>>"+len);
return str;
public static void main(String[] arg) {
Date date = new Date();
System.out.println(date.toGMTString());
getData gd = new getData();
System.out.println(date.toGMTString());
//System.out.println(gd.getIndexData("ACB"));
* WebClient:
package hnx;
import java.util.Date;
import java.util.Map;
import javax.xml.namespace.QName;
import javax.xml.soap.MessageFactory;
import javax.xml.soap.SOAPBody;
import javax.xml.soap.SOAPBodyElement;
import javax.xml.soap.SOAPElement;
import javax.xml.soap.SOAPMessage;
import javax.xml.ws.BindingProvider;
import javax.xml.ws.Dispatch;
import javax.xml.ws.Service;
import javax.xml.ws.WebServiceException;
import javax.xml.ws.soap.SOAPBinding;
public class wsClient {
public wsClient() {
super();
public String procWeb() {
String strmsg = null;
try {
QName serviceName = new QName("http://192.168.60.18:7001/","getDataService");
// QName for Port As defined in wsdl.
QName portName = new QName("http://192.168.60.18:7001/","getDataPort");
// //Endpoint Address
String endpointAddress = "http://192.168.60.18:7001/WsIndex/getDataPort?wsdl";
// Create a dynamic Service instance
Service service = Service.create(serviceName);
service.addPort(portName, SOAPBinding.SOAP11HTTP_BINDING,
endpointAddress);
// Create a dispatch instance
Dispatch<SOAPMessage> dispatch = service.createDispatch(portName,
SOAPMessage.class, Service.Mode.MESSAGE);
// Use Dispatch as BindingProvider
BindingProvider bp = (BindingProvider) dispatch;
// Optionally Configure RequestContext to send SOAPAction HTTP Header
Map<String, Object> rc = bp.getRequestContext();
rc.put(BindingProvider.SOAPACTION_USE_PROPERTY, Boolean.TRUE);
rc.put(BindingProvider.SOAPACTION_URI_PROPERTY, "http://ws/");
// Obtain a preconfigured SAAJ MessageFactory
MessageFactory factory = ((SOAPBinding) bp.getBinding())
.getMessageFactory();
// Create SOAPMessage Request
SOAPMessage request = factory.createMessage();
// Request Body
SOAPBody body = request.getSOAPBody();
// Compose the soap:Body payload
QName payloadName = new QName("http://ws/", "getIndexData","ns1");
SOAPBodyElement payload = body.addBodyElement(payloadName);
SOAPElement message = payload.addChildElement( "param");
message.addTextNode("HNX302");
request.saveChanges();
// Invoke the endpoint synchronously
System.out.println(message);
SOAPMessage reply = null;
try { // Invoke Endpoint Operation and read response
reply = dispatch.invoke(request);
} catch (WebServiceException wse) {
wse.printStackTrace();
// process the reply
SOAPBody bodyRes = reply.getSOAPBody();
SOAPBodyElement nextSoapBodyElement = (SOAPBodyElement) bodyRes
.getChildElements().next();
SOAPElement soapElement = (SOAPElement) nextSoapBodyElement
.getChildElements().next();
strmsg = soapElement.getValue();
System.out.println("AAA >>"+strmsg);
} catch (Exception wse) {
wse.printStackTrace();
return strmsg;
public static void main(String[] arg) {
wsClient ws = new wsClient();
Date date = new Date();
System.out.println(date.toGMTString());
System.out.println(ws.procWeb());
System.out.println(date.toGMTString());
* Servlet:
package hnx;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.*;
import javax.servlet.http.*;
import ws.GetData;
import ws.GetDataPortClient;
import ws.GetDataService;
public class getIndex extends HttpServlet {
private static final String CONTENT_TYPE = "text/html; charset=UTF-8";
public void init(ServletConfig config) throws ServletException {
super.init(config);
public void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException,
IOException {
doGet(request, response);
public void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException,
IOException {
response.reset();
response.flushBuffer();
response.setContentType(CONTENT_TYPE);
PrintWriter out = response.getWriter();
// GetDataService service = new GetDataService();
// GetData getData = service.getGetDataPort();
// String str = getData.getIndexData("HNX302");
// int length = str.length();
// response.setContentLength(length);
wsClient ws = new wsClient();
String str = ws.procWeb();
try {
out.println(str);
} catch (Exception e) {
e.printStackTrace();
out.close();
ERROR: >>>>>[Another instance of the application is running on the server. JDeveloper redeploy the application.]
[Application SClient stopped but not undeployed from Server Instance IntegratedWebLogicServer]
[Running application SClient on Server Instance IntegratedWebLogicServer...]
[03:41:48 PM] ---- Deployment started. ----
[03:41:48 PM] Target platform is (Weblogic 10.3).
[03:41:48 PM] Retrieving existing application information
[03:41:48 PM] Running dependency analysis...
[03:41:48 PM] Deploying 2 profiles...
[03:41:48 PM] Wrote Web Application Module to C:\Users\W7\AppData\Roaming\JDeveloper\system11.1.1.2.36.55.36\o.j2ee\drs\SClient\sgetDataWebApp.war
[03:41:48 PM] Wrote Enterprise Application Module to C:\Users\W7\AppData\Roaming\JDeveloper\system11.1.1.2.36.55.36\o.j2ee\drs\SClient
[03:41:49 PM] Redeploying Application...
[03:41:49 PM] Application Redeployed Successfully.
[03:41:49 PM] The following URL context root(s) were defined and can be used as a starting point to test your application:
[03:41:49 PM] http://192.168.9.100:7101/SClient
[03:41:49 PM] Elapsed time for deployment: 1 second
[03:41:49 PM] ---- Deployment finished. ----
Run startup time: 1380 ms.
[Application SClient deployed to Server Instance IntegratedWebLogicServer]
Target URL -- http://127.0.0.1:7101/SClient/getindex
[param: null]
javax.xml.ws.WebServiceException: com.ctc.wstx.exc.WstxIOException: Exceeding stated content length of 228
at com.sun.xml.ws.encoding.StreamSOAPCodec.encode(StreamSOAPCodec.java:117)
at com.sun.xml.ws.encoding.SOAPBindingCodec.encode(SOAPBindingCodec.java:258)
at com.sun.xml.ws.transport.http.client.HttpTransportPipe.process(HttpTransportPipe.java:165)
at com.sun.xml.ws.transport.http.client.HttpTransportPipe.processRequest(HttpTransportPipe.java:101)
at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:604)
at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:563)
at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:548)
at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:445)
at com.sun.xml.ws.client.Stub.process(Stub.java:248)
at com.sun.xml.ws.client.dispatch.DispatchImpl.doInvoke(DispatchImpl.java:189)
at com.sun.xml.ws.client.dispatch.DispatchImpl.invoke(DispatchImpl.java:215)
at hnx.wsClient.procWeb(wsClient.java:75)
at hnx.getIndex.doGet(getIndex.java:40)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.dms.wls.DMSServletFilter.doFilter(DMSServletFilter.java:326)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3592)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2202)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2108)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1432)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
Caused by: com.ctc.wstx.exc.WstxIOException: Exceeding stated content length of 228
at com.ctc.wstx.sw.BaseStreamWriter.finishDocument(BaseStreamWriter.java:1687)
at com.ctc.wstx.sw.BaseStreamWriter.writeEndDocument(BaseStreamWriter.java:585)
at com.sun.xml.ws.message.saaj.SAAJMessage.writeTo(SAAJMessage.java:396)
at com.sun.xml.ws.encoding.StreamSOAPCodec.encode(StreamSOAPCodec.java:114)
... 29 more
Caused by: java.net.ProtocolException: Exceeding stated content length of 228
at weblogic.net.http.ContentLengthOutputStream.write(ContentLengthOutputStream.java:39)
at com.ctc.wstx.io.UTF8Writer.flush(UTF8Writer.java:96)
at com.ctc.wstx.sw.BufferingXmlWriter.flush(BufferingXmlWriter.java:214)
at com.ctc.wstx.sw.BufferingXmlWriter.close(BufferingXmlWriter.java:194)
at com.ctc.wstx.sw.BaseStreamWriter.finishDocument(BaseStreamWriter.java:1685)
... 32 more
java.lang.NullPointerException
at hnx.wsClient.procWeb(wsClient.java:82)
at hnx.getIndex.doGet(getIndex.java:40)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.dms.wls.DMSServletFilter.doFilter(DMSServletFilter.java:326)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3592)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2202)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2108)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1432)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
Can anyone help?
Thanks in advance.
LTThoiI'm no webservices/servlet expert , but can you check the obvious out here -
javax.xml.ws.WebServiceException: com.ctc.wstx.exc.WstxIOException: Exceeding stated content length of 228
at ......
at hnx.wsClient.procWeb(wsClient.java:75)+ // check if you are passign something thats more than 228 chars
at hnx.getIndex.doGet(getIndex.java:40) -
Calling ejbs from servlets without using web apps.
i am trying to instantiate and ejb from a servlet but it gives me the
following error. the configuration and code that generated this error is
attached below.
oddly enough the same chunk of code works fine in a stand alone client if
j2ee.jar;weblogic\classes and weblogicaux.jar are included in the classpath.
any help would be appreciated.
peter
-8787844: in servlet.Webmedx.init
-8787844: null
java.lang.ClassCastException
at
com.sun.corba.ee.internal.javax.rmi.PortableRemoteObject.narrow(Porta
bleRemoteObject.java:296)
at
javax.rmi.PortableRemoteObject.narrow(PortableRemoteObject.java:137)
at webmedx.servlet.Webmedx.init(Webmedx.java:23)
at javax.servlet.GenericServlet.init(GenericServlet.java:258)
at
weblogic.servlet.internal.ServletStubImpl.createServlet(ServletStubIm
pl.java:474)
at
weblogic.servlet.internal.ServletStubImpl.createInstances(ServletStub
Impl.java, Compiled Code)
at
weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubI
mpl.java:422)
at
weblogic.servlet.internal.ServletStubImpl.getServlet(ServletStubImpl.
java:187)
at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
pl.java:118)
at
weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletCon
textImpl.java:760)
at
weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletCon
textImpl.java:707)
at
weblogic.servlet.internal.ServletContextManager.invokeServlet(Servlet
ContextManager.java:251)
at
weblogic.socket.MuxableSocketHTTP.invokeServlet(MuxableSocketHTTP.jav
a:369)
at
weblogic.socket.MuxableSocketHTTP.execute(MuxableSocketHTTP.java:269)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java, Compiled
Code)
configuration:
WebLogic startup settings are presently:
CLASSPATH Prefix
\weblogic\lib\weblogic510sp5boot.jar;\j2ee\lib\j2ee.jar;\web
logic\lib\servlet.jar;\weblogic\lib\jaxp.jar;\weblogic\lib\parser.jar
CLASSPATH
\weblogic\lib\weblogic510sp5boot.jar;\j2ee\lib\j2ee.jar;\web
logic\lib\servlet.jar;\weblogic\lib\jaxp.jar;\weblogic\lib\parser.jar;\weblo
gic\
jre1_2\lib\tools.jar;\weblogic\jre1_2\jre\lib\rt.jar;\weblogic\jre1_2\jre\li
b\i1
8n.jar;C:\weblogic\license;C:\weblogic\classes\boot;C:\weblogic\classes;C:\w
eblo
gic\lib\weblogicaux.jar;C:\weblogic\eval\cloudscape\lib\cloudscape.jar
JAVA_HOME \weblogic\jre1_2
WEBLOGIC_LICENSEDIR C:\weblogic\license
WEBLOGIC_HOME C:\weblogic
system properties:
java.security.manager
java.security.policy=\weblogic\weblogic.policy
weblogic.system.home=\weblogic
java.compiler=symcjit
weblogic.class.path=\weblogic\lib\weblogic510sp5.jar;\weblog
ic\license;\weblogic\classes;\weblogic\lib\weblogicaux.jar
INITIAL_HEAP 64 MB
MAX_HEAP 64 MB
SERVERCLASSPATH
\weblogic\lib\weblogic510sp5boot.jar;\j2ee\lib\j2ee.jar;\web
logic\lib\servlet.jar;\weblogic\lib\jaxp.jar;\weblogic\lib\parser.jar;\weblo
gic\
jre1_2\jre\lib\rt.jar;\weblogic\jre1_2\jre\lib\i18n.jar;C:\weblogic\classes\
boot
;C:\weblogic\eval\cloudscape\lib\cloudscape.jar
Type "wlconfig -help" for program usage.
code:
public void init() throws ServletException{
try{
Log.debug("in servlet.Webmedx.init");
Properties h = new Properties();
h.put(Context.INITIAL_CONTEXT_FACTORY,
"weblogic.jndi.WLInitialContextFactory");
h.put(Context.PROVIDER_URL, "t3://localhost:7001");
Context initial = new InitialContext(h);
Object objref = initial.lookup("webmedx/pool");
webmedxpoolhome =
(WebmedxPoolHome)PortableRemoteObject.narrow(objref,WebmedxPoolHome.class);
}catch(Exception ex){
Log.error(ex);
The problem before was that you were trying to load the same class from
2 different class paths. The ClassCastException is very un-intuitive in this
case.
Peter Ghosh wrote:
> however, when i added it to the classpath prefix (not the
> weblogic.classpath) it seemed to do the trick. very odd.
> thanks,
> peter
>
> "Peter Ghosh" <[email protected]> wrote in message
> news:[email protected]...
> > i tried that but no luck. any other suggestions?
> > peter
> >
> > "Ohad Shany" <[email protected]> wrote in message
> > news:[email protected]...
> > > Is your EJB classes on the servlet classpath?
> > > (weblogic.httpd.servlet.classpath property)
> > >
> > > I had some strange casting problem when my EJB classes was on the
> servlet
> > > classpath
> > > and it was gone when i moved them to the weblogic.class.path . Worth a
> > try.
> > >
> > > OHAD
> > >
> > > Peter Ghosh wrote:
> > >
> > > > i am trying to instantiate and ejb from a servlet but it gives me the
> > > > following error. the configuration and code that generated this error
> is
> > > > attached below.
> > > > oddly enough the same chunk of code works fine in a stand alone client
> > if
> > > > j2ee.jar;weblogic\classes and weblogicaux.jar are included in the
> > classpath.
> > > > any help would be appreciated.
> > > > peter
> > > >
> > > > -8787844: in servlet.Webmedx.init
> > > > -8787844: null
> > > > java.lang.ClassCastException
> > > > at
> > > > com.sun.corba.ee.internal.javax.rmi.PortableRemoteObject.narrow(Porta
> > > > bleRemoteObject.java:296)
> > > > at
> > > > javax.rmi.PortableRemoteObject.narrow(PortableRemoteObject.java:137)
> > > > at webmedx.servlet.Webmedx.init(Webmedx.java:23)
> > > > at javax.servlet.GenericServlet.init(GenericServlet.java:258)
> > > > at
> > > > weblogic.servlet.internal.ServletStubImpl.createServlet(ServletStubIm
> > > > pl.java:474)
> > > > at
> > > > weblogic.servlet.internal.ServletStubImpl.createInstances(ServletStub
> > > > Impl.java, Compiled Code)
> > > > at
> > > > weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubI
> > > > mpl.java:422)
> > > > at
> > > > weblogic.servlet.internal.ServletStubImpl.getServlet(ServletStubImpl.
> > > > java:187)
> > > > at
> > > > weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
> > > > pl.java:118)
> > > > at
> > > > weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletCon
> > > > textImpl.java:760)
> > > > at
> > > > weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletCon
> > > > textImpl.java:707)
> > > > at
> > > > weblogic.servlet.internal.ServletContextManager.invokeServlet(Servlet
> > > > ContextManager.java:251)
> > > > at
> > > > weblogic.socket.MuxableSocketHTTP.invokeServlet(MuxableSocketHTTP.jav
> > > > a:369)
> > > > at
> > > > weblogic.socket.MuxableSocketHTTP.execute(MuxableSocketHTTP.java:269)
> > > >
> > > > at weblogic.kernel.ExecuteThread.run(ExecuteThread.java, Compiled
> > > > Code)
> > > >
> > > > configuration:
> > > >
> > > > WebLogic startup settings are presently:
> > > >
> > > > CLASSPATH Prefix
> > > > \weblogic\lib\weblogic510sp5boot.jar;\j2ee\lib\j2ee.jar;\web
> > > > logic\lib\servlet.jar;\weblogic\lib\jaxp.jar;\weblogic\lib\parser.jar
> > > > CLASSPATH
> > > > \weblogic\lib\weblogic510sp5boot.jar;\j2ee\lib\j2ee.jar;\web
> > > >
> >
> logic\lib\servlet.jar;\weblogic\lib\jaxp.jar;\weblogic\lib\parser.jar;\weblo
> > > > gic\
> > > >
> >
> jre1_2\lib\tools.jar;\weblogic\jre1_2\jre\lib\rt.jar;\weblogic\jre1_2\jre\li
> > > > b\i1
> > > >
> >
> 8n.jar;C:\weblogic\license;C:\weblogic\classes\boot;C:\weblogic\classes;C:\w
> > > > eblo
> > > > gic\lib\weblogicaux.jar;C:\weblogic\eval\cloudscape\lib\cloudscape.jar
> > > > JAVA_HOME \weblogic\jre1_2
> > > > WEBLOGIC_LICENSEDIR C:\weblogic\license
> > > > WEBLOGIC_HOME C:\weblogic
> > > > system properties:
> > > > java.security.manager
> > > > java.security.policy=\weblogic\weblogic.policy
> > > > weblogic.system.home=\weblogic
> > > > java.compiler=symcjit
> > > >
> > > > weblogic.class.path=\weblogic\lib\weblogic510sp5.jar;\weblog
> > > > ic\license;\weblogic\classes;\weblogic\lib\weblogicaux.jar
> > > > INITIAL_HEAP 64 MB
> > > > MAX_HEAP 64 MB
> > > > SERVERCLASSPATH
> > > > \weblogic\lib\weblogic510sp5boot.jar;\j2ee\lib\j2ee.jar;\web
> > > >
> >
> logic\lib\servlet.jar;\weblogic\lib\jaxp.jar;\weblogic\lib\parser.jar;\weblo
> > > > gic\
> > > >
> >
> jre1_2\jre\lib\rt.jar;\weblogic\jre1_2\jre\lib\i18n.jar;C:\weblogic\classes\
> > > > boot
> > > > ;C:\weblogic\eval\cloudscape\lib\cloudscape.jar
> > > >
> > > > Type "wlconfig -help" for program usage.
> > > >
> > > > code:
> > > >
> > > > public void init() throws ServletException{
> > > > try{
> > > > Log.debug("in servlet.Webmedx.init");
> > > > Properties h = new Properties();
> > > > h.put(Context.INITIAL_CONTEXT_FACTORY,
> > > > "weblogic.jndi.WLInitialContextFactory");
> > > > h.put(Context.PROVIDER_URL, "t3://localhost:7001");
> > > > Context initial = new InitialContext(h);
> > > > Object objref = initial.lookup("webmedx/pool");
> > > > webmedxpoolhome =
> > > >
> > > >
> >
> (WebmedxPoolHome)PortableRemoteObject.narrow(objref,WebmedxPoolHome.class);
> > > > }catch(Exception ex){
> > > > Log.error(ex);
> > > > }
> > > > }
> > >
> >
> >
-
11g preview version 3: JNDI Lookup problem when calling PL/SQL webservice
Hi,
I am experiencing a problem when calling a PL/SQL Webservice from a BPEL flow.
When I am trying to test my BPEL flow from the SOA Console I get a "Error doing JNDI lookup on target jdbc/MyDBDS"
The composite application including the BPEL flow is deployed in one application. "CompositeApp" and the web service in another Application called
"WebServiceApp".
Both applications are deployed on the same built in OC4J Application Server
If I test the webservice in isolation from the SOA console it works. It also seems to be working if the webservice and the and the BPEL flow is in the same project.
If anyone has any ideas on this one I would be very greatful.
Thanks in advancetry creating the MyDBDS connection as an application resource in both applications.
-
Revision: 4741
Author: [email protected]
Date: 2009-01-29 13:43:53 -0800 (Thu, 29 Jan 2009)
Log Message:
Fix to RTE problem when calling captureEndValues() without having first called captureStartValues(). outcome of a patch submission, although this fix is different than the one suggested in the patch.
QE Notes: None
Doc Notes: None
Bugs: patch sdk-17060, bug sdk-16452
Reviewer: Jason
tests: checkintests, Mustella: tests/Effects tests/ListDataEffects
Ticket Links:
http://bugs.adobe.com/jira/browse/sdk-17060
http://bugs.adobe.com/jira/browse/sdk-16452
Modified Paths:
flex/sdk/branches/3.x/frameworks/projects/framework/src/mx/effects/Effect.asLook for the "contact us" on the verizon pages. http://www22.verizon.com/content/contactus/
Almost all of the forums here are peer to peer. Some verizon admins will occasionaly step in and try to get you help. These admins are usually not able to solve problems for you themselves, but can sometimes give advise or get you in contact with someone who can. -
Hi
I am getting this error when I am making an EJB method which resides in a different weblogic 9.1 server.
I have enaled the trust between my two domains. Set the required class path settings.
My client call is from a JSP , say client.jsp.
Here I get remote object of the EJB and calls the required method
Now
1) My EJB calls are succesful when I DO NOT secure it
2) but when I make it is secured , ie when I
include the jsp in secured URL ie. under <security-constraint><url-pattern>client.jsp</> in web.xml
, it gives me the follwing error
The stack trace is given below
java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[com.ebreviate.security.wl9realm.EBRUser@a09a08, ess, everyone]
at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:191)
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:315)
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:250)
at weblogic.jndi.internal.ServerNamingNode_910_WLStub.lookup(Unknown Source)
at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:374)
Truncated. see log file for complete stacktrace
Any idea why it is ?
Please let me know
Thanks
Binu
Edited by binurajkr at 01/25/2008 4:36 AMHi. Contact official BEA Support. This is likely
to be a known issue with a patch available to fix it.
Joe
binu raj wrote:
Hi
I am getting this error when I am making an EJB method which resides in a different weblogic 9.1 server.
I have enaled the trust between my two domains. Set the required class path settings.
My client call is from a JSP , say client.jsp.
Here I get remote object of the EJB and calls the required method
Now
1) My EJB calls are succesful when I DO NOT secure it
2) but when I make it is secured , ie when I
include the jsp in secured URL ie. under <security-constraint><url-pattern>client.jsp</> in web.xml
, it gives me the follwing error
The stack trace is given below
java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[com.ebreviate.security.wl9realm.EBRUser@a09a08, ess, everyone]
at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:191)
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:315)
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:250)
at weblogic.jndi.internal.ServerNamingNode_910_WLStub.lookup(Unknown Source)
at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:374)
Truncated. see log file for complete stacktrace
Any idea why it is ?
Please let me know
Thanks
Binu
Edited by binurajkr at 01/25/2008 4:36 AM -
Java.lang.SecurityException: [Security:090398]Invalid Subject
Hi
I am getting this error when I am making an EJB method which resides in a different weblogic 9.1 server.
I have enaled the trust between my two domains. Set the required class path settings.
My client call is from a JSP , say client.jsp.
Here I get remote object of the EJB and calls the required method
Now
1) My EJB calls are succesful when I DO NOT secure it
2) but when I make it is secured , ie when I
include the jsp in secured URL ie. under <security-constraint><url-pattern>client.jsp</> in web.xml
, it gives me the follwing error
The stack trace is given below
java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[com.ebreviate.security.wl9realm.EBRUser@a09a08, ess, everyone]
at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:191)
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:315)
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:250)
at weblogic.jndi.internal.ServerNamingNode_910_WLStub.lookup(Unknown Source)
at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:374)
Truncated. see log file for complete stacktrace
Any idea why it is ?
Please let me know
Thanks
BinuI got this issue resolved by setting
Context.SECURITY_PRINCIPAL, "" , before the RMI ejb call
Binu -
[Security:090398] Invalid Subject error in clustered deployment
Hi,
I have a simple Java client that calls an EJB which works fine when the EJB is deployed on a non-clustered server, but it fails intermittently with a [Security:090398]Invalid Subject: ... error when the EJB is deployed on a clustered server. Looking at the log files, it seems that one of the two servers in the cluster is throwing the exception consistently. I believe the servers are in the same domain, but since I've migrated the WL 6.1 config.xml file to 8.1 perhaps there is something I missed.
Also, I noticed that the two servers in the cluster are able to see each other. The messages about the other node joining the cluster are in both logs.
Here's the exception on the client side:
java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[system]
at weblogic.rjvm.BasicOutboundRequest.sendReceive(BasicOutboundRequest.java:108)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:284)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:244)
at com.kiodex.ejb.security.PrincipalOpsBean_21hnly_HomeImpl_813_WLStub.create(Unknown Source)
at com.kiodex.wlclient.WeblogicClusterClient.main(WeblogicClusterClient.java:41)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:78)
Caused by: java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[system]
at weblogic.security.service.SecurityServiceManager.seal(SecurityServiceManager.java:680)
at weblogic.rjvm.MsgAbbrevInputStream.getSubject(MsgAbbrevInputStream.java:187)
at weblogic.rmi.internal.BasicServerRef.acceptRequest(BasicServerRef.java:827)
at weblogic.rmi.internal.BasicServerRef.dispatch(BasicServerRef.java:300)
at weblogic.rjvm.RJVMImpl.dispatchRequest(RJVMImpl.java:996)
at weblogic.rjvm.RJVMImpl.dispatch(RJVMImpl.java:917)
at weblogic.rjvm.ConnectionManagerServer.handleRJVM(ConnectionManagerServer.java:225)
at weblogic.rjvm.ConnectionManager.dispatch(ConnectionManager.java:794)
at weblogic.rjvm.t3.T3JVMConnection.dispatch(T3JVMConnection.java:742)
at weblogic.socket.SocketMuxer.readReadySocketOnce(SocketMuxer.java:682)
at weblogic.socket.SocketMuxer.readReadySocket(SocketMuxer.java:628)
at weblogic.socket.PosixSocketMuxer.processSockets(PosixSocketMuxer.java:123)
at weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:32)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
Here is the server-side exception:
####<Sep 17, 2004 4:44:17 PM EDT> <Warning> <RMI> <titanic> <titanic> <ExecuteThread: '0' for queue: 'weblogic.socket.Muxer'> <<WLS Kernel>> <> <BEA-080003> <RuntimeException thrown by rmi server:
weblogic.rmi.cluster.ClusterableServerRef@12e - hostID: '2921525709399114632S:10.0.14.10:[23770,23770,-1,-1,-1,-1,-1,0,0]:hindenburg.nis.kiodex.com:23770,titanic.nis.kiodex.com:23770:RiskWorkbenc
h:titanic', oid: '302', implementation: 'com.kiodex.ejb.security.PrincipalOpsBean_21hnly_HomeImpl@120a9d6'
java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[system].
java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[system]
at weblogic.security.service.SecurityServiceManager.seal(SecurityServiceManager.java:680)
at weblogic.rjvm.MsgAbbrevInputStream.getSubject(MsgAbbrevInputStream.java:187)
at weblogic.rmi.internal.BasicServerRef.acceptRequest(BasicServerRef.java:827)
at weblogic.rmi.internal.BasicServerRef.dispatch(BasicServerRef.java:300)
at weblogic.rjvm.RJVMImpl.dispatchRequest(RJVMImpl.java:996)
at weblogic.rjvm.RJVMImpl.dispatch(RJVMImpl.java:917)
at weblogic.rjvm.ConnectionManagerServer.handleRJVM(ConnectionManagerServer.java:225)
at weblogic.rjvm.ConnectionManager.dispatch(ConnectionManager.java:794)
at weblogic.rjvm.t3.T3JVMConnection.dispatch(T3JVMConnection.java:742)
at weblogic.socket.SocketMuxer.readReadySocketOnce(SocketMuxer.java:682)
at weblogic.socket.SocketMuxer.readReadySocket(SocketMuxer.java:628)
at weblogic.socket.PosixSocketMuxer.processSockets(PosixSocketMuxer.java:123)
at weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:32)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
Any ideas?Hi Joshua,
Make sure that
a) Servers in the cluster are in the same domain;
b) Server in the cluster are named differently.
Also, check this:
http://www.viewtier.com/newsgroups/thread.jspa?threadID=4&tstart=0
http://support.bea.com/support_news/product_troubleshooting/Investigating_Domain_Trust_Issues_Pattern.html
Regards,
Slava Imeshev
"Joshua Davis" <[email protected]> wrote in message news:32871939.1095455911574.JavaMail.root@jserv5...
> Hi,
>
> I have a simple Java client that calls an EJB which works fine when the EJB is deployed on a non-clustered server, but it fails
intermittently with a [Security:090398]Invalid Subject: ... error when the EJB is deployed on a clustered server. Looking at the
log files, it seems that one of the two servers in the cluster is throwing the exception consistently. I believe the servers are
in the same domain, but since I've migrated the WL 6.1 config.xml file to 8.1 perhaps there is something I missed.
>
> Also, I noticed that the two servers in the cluster are able to see each other. The messages about the other node joining the
cluster are in both logs.
>
> Here's the exception on the client side:
> java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[system]
> at weblogic.rjvm.BasicOutboundRequest.sendReceive(BasicOutboundRequest.java:108)
> at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:284)
> at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:244)
> at com.kiodex.ejb.security.PrincipalOpsBean_21hnly_HomeImpl_813_WLStub.create(Unknown Source)
> at com.kiodex.wlclient.WeblogicClusterClient.main(WeblogicClusterClient.java:41)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:324)
> at com.intellij.rt.execution.application.AppMain.main(AppMain.java:78)
> Caused by: java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[system]
> at weblogic.security.service.SecurityServiceManager.seal(SecurityServiceManager.java:680)
> at weblogic.rjvm.MsgAbbrevInputStream.getSubject(MsgAbbrevInputStream.java:187)
> at weblogic.rmi.internal.BasicServerRef.acceptRequest(BasicServerRef.java:827)
> at weblogic.rmi.internal.BasicServerRef.dispatch(BasicServerRef.java:300)
> at weblogic.rjvm.RJVMImpl.dispatchRequest(RJVMImpl.java:996)
> at weblogic.rjvm.RJVMImpl.dispatch(RJVMImpl.java:917)
> at weblogic.rjvm.ConnectionManagerServer.handleRJVM(ConnectionManagerServer.java:225)
> at weblogic.rjvm.ConnectionManager.dispatch(ConnectionManager.java:794)
> at weblogic.rjvm.t3.T3JVMConnection.dispatch(T3JVMConnection.java:742)
> at weblogic.socket.SocketMuxer.readReadySocketOnce(SocketMuxer.java:682)
> at weblogic.socket.SocketMuxer.readReadySocket(SocketMuxer.java:628)
> at weblogic.socket.PosixSocketMuxer.processSockets(PosixSocketMuxer.java:123)
> at weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:32)
> at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
> at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
>
> Here is the server-side exception:
>
> ####<Sep 17, 2004 4:44:17 PM EDT> <Warning> <RMI> <titanic> <titanic> <ExecuteThread: '0' for queue: 'weblogic.socket.Muxer'>
<<WLS Kernel>> <> <BEA-080003> <RuntimeException thrown by rmi server:
> weblogic.rmi.cluster.ClusterableServerRef@12e - hostID:
'2921525709399114632S:10.0.14.10:[23770,23770,-1,-1,-1,-1,-1,0,0]:hindenburg.nis.kiodex.com:23770,titanic.nis.kiodex.com:23770:RiskW
orkbenc
> h:titanic', oid: '302', implementation: 'com.kiodex.ejb.security.PrincipalOpsBean_21hnly_HomeImpl@120a9d6'
> java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[system].
> java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[system]
> at weblogic.security.service.SecurityServiceManager.seal(SecurityServiceManager.java:680)
> at weblogic.rjvm.MsgAbbrevInputStream.getSubject(MsgAbbrevInputStream.java:187)
> at weblogic.rmi.internal.BasicServerRef.acceptRequest(BasicServerRef.java:827)
> at weblogic.rmi.internal.BasicServerRef.dispatch(BasicServerRef.java:300)
> at weblogic.rjvm.RJVMImpl.dispatchRequest(RJVMImpl.java:996)
> at weblogic.rjvm.RJVMImpl.dispatch(RJVMImpl.java:917)
> at weblogic.rjvm.ConnectionManagerServer.handleRJVM(ConnectionManagerServer.java:225)
> at weblogic.rjvm.ConnectionManager.dispatch(ConnectionManager.java:794)
> at weblogic.rjvm.t3.T3JVMConnection.dispatch(T3JVMConnection.java:742)
> at weblogic.socket.SocketMuxer.readReadySocketOnce(SocketMuxer.java:682)
> at weblogic.socket.SocketMuxer.readReadySocket(SocketMuxer.java:628)
> at weblogic.socket.PosixSocketMuxer.processSockets(PosixSocketMuxer.java:123)
> at weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:32)
> at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
> at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
>
> Any ideas?
-
Hi
I am getting java.lang.SecurityException: [Security:090398]Invalid Subject ... under the following scenario:
- I have a simple dispatcher class which is starting a number of threads, every one of them sending messages to different Weblogic server.
- The dispatcher class is a simple Java class, running from outside of Weblogic server; the authentication is done using the JNDI login.
- The message sender threads create an InitialContext for each message being sent and the context is closed after succesfully sending the message.
With just one message sender thread running, everything is OK.
The problems appear when at least two threads run at the same time. What happens is that one of the threads sends messages successfully while the other ones fail with:
java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[user1, role1, role2, role3, role4]
at weblogic.rjvm.BasicOutboundRequest.sendReceive(BasicOutboundRequest.java:108)
at weblogic.rmi.internal.BasicRemoteRef.invoke(BasicRemoteRef.java:138)
at weblogic.jms.dispatcher.DispatcherImpl_812_WLStub.dispatchSyncFuture(Unknown Source)
at weblogic.jms.dispatcher.DispatcherWrapperState.dispatchSync(DispatcherWrapperState.java:339)
at weblogic.jms.client.JMSConnection.createSessionInternal(JMSConnection.java:400)
at weblogic.jms.client.JMSConnection.createTopicSession(JMSConnection.java:359)
at com.delta.parser.test.TestMessageThread.sendMessage(TestMessageThread.java:54)
at com.delta.parser.test.TestMessageThread.run(TestMessageThread.java:34)
Caused by: java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[user1, role1, role2, role3, role4]
at weblogic.security.service.SecurityServiceManager.seal(SecurityServiceManager.java:682)
at weblogic.rjvm.MsgAbbrevInputStream.getSubject(MsgAbbrevInputStream.java:182)
at weblogic.rmi.internal.BasicServerRef.acceptRequest(BasicServerRef.java:825)
at weblogic.rmi.internal.BasicServerRef.dispatch(BasicServerRef.java:300)
at weblogic.rjvm.RJVMImpl.dispatchRequest(RJVMImpl.java:923)
at weblogic.rjvm.RJVMImpl.dispatch(RJVMImpl.java:844)
at weblogic.rjvm.ConnectionManagerServer.handleRJVM(ConnectionManagerServer.java:222)
at weblogic.rjvm.ConnectionManager.dispatch(ConnectionManager.java:794)
at weblogic.rjvm.t3.T3JVMConnection.dispatch(T3JVMConnection.java:570)
at weblogic.socket.NTSocketMuxer.processSockets(NTSocketMuxer.java:105)
at weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:32)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
The environment is Weblogic 8.1 (WebLogic Platform Developer license) running on Windows XP Professional.
In the classpath I have the following weblogic jar files: weblogic.jar, wlclient.jar, wljmsclient.jar.
The code that is generating the exceptions is:
/****************** Dispatcher ************************/
package test;
public class TestThreadDispatcher {
public TestThreadDispatcher() {
public static void main(String[] args) {
TestThreadDispatcher instance = new TestThreadDispatcher();
instance.doTest();
private void doTest() {
TestMessageThread t1 = new TestMessageThread("weblogic.jndi.WLInitialContextFactory",
"t3://pc10:7001",
"user1",
"passwd");
t1.start();
TestMessageThread t2 = new TestMessageThread("weblogic.jndi.WLInitialContextFactory",
"t3://sjn:7001",
"user1",
"passwd");
t2.start();
TestMessageThread t3 = new TestMessageThread("weblogic.jndi.WLInitialContextFactory",
"t3://pc99:7001",
"user1",
"passwd");
t3.start();
/****************** Message sender thread **************/
package test;
import java.util.*;
import javax.jms.*;
import javax.naming.*;
import com.delta.parser.util.*;
public class TestMessageThread extends Thread implements ParserConstants {
private Hashtable environment;
public TestMessageThread(String initialFactory,
String url,
String principal,
String credentials) {
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,
initialFactory);
env.put(Context.PROVIDER_URL,
url);
env.put(Context.SECURITY_PRINCIPAL,
principal);
env.put(Context.SECURITY_CREDENTIALS,
credentials);
environment = env;
public void run() {
int cnt = 0;
while(true) {
sendMessage("" + cnt++);
try {
sleep(500);
} catch (InterruptedException iex) {
private void sendMessage(String text) {
try {
Context ctx = new InitialContext(environment);
TopicConnectionFactory factory = (TopicConnectionFactory)
ctx.lookup("javax.jms.TopicConnectionFactory");
TopicConnection connection = factory.createTopicConnection();
TopicSession session = connection.createTopicSession(false,
javax.jms.Session.AUTO_ACKNOWLEDGE);
Topic topic = (Topic)ctx.lookup("FileTopic");
TopicPublisher publisher = session.createPublisher(topic);
TextMessage message = session.createTextMessage(text);
publisher.publish(message);
System.out.println("Message " + text + " sent to " +
environment.get(Context.PROVIDER_URL));
ctx.close();
catch (JMSException jmsex) {
jmsex.printStackTrace();
catch (NamingException nex) {
nex.printStackTrace();
catch (SecurityException scex) {
scex.printStackTrace();
Any workarounds for this?
BTW, I also tried using weblogic.jndi.Environment to obtain an InitialContext and wrapping the code inside thread's run() into Security.runAs(subject, new PrivilegedAction() { ....}, without success.
Thanks in advance
Mirel RataHi Kiran,
Thank you for replying.
Unfortunately the fix you suggested did not solve the problem. The server version I'm using is 8.1.
The application I'm sending messages from is a standalone Java application, does not run from inside Weblogic server.
Any thoughts?
Regards,
Mirel Rata -
I have a class that is used to check the status of all managed server in a domain. I use this class to check on the status of multiple domains.
I have a for loop over all the domains and then invoke the method below, one for each domain (I instantiate the class anew for each domain)
The 1st domain connects and returns the status properly. However on subsequent iterations thru the look I get the following SecuriyException below. I have tried a number of things such as setting MBeanHome to null etc but this error repeats anytime I connect to N+1 domains.
Is there a fix for this.
Note: I am using WLS 8.1 SP3 thru 5. And I know the username & pwd is correct cause I can connect using to the admin console using the same username & password and am part of the Administrators group.
Exception on the client on N+1 connect attemp:
java.lang.SecurityException: [Security:090398]Invalid Subject: admin
at weblogic.rjvm.BasicOutboundRequest.sendReceive(BasicOutboundRequest.j
ava:108)
at weblogic.rmi.internal.BasicRemoteRef.invoke(BasicRemoteRef.java:137)
at weblogic.management.internal.AdminMBeanHomeImpl_815_WLStub.getDomainN
ame(Unknown Source)
Exception on the server:
####<Mar 28, 2006 2:59:51 PM CST> <Warning> <RMI> <htx6056> <AdminServer> <Execu
teThread: '2' for queue: 'weblogic.socket.Muxer'> <<WLS Kernel>> <> <BEA-080003>
<RuntimeException thrown by rmi server: weblogic.rmi.internal.BasicServerRef@10
2 - hostID: '-4547912678907759832S:htx6056.cce.hp.com:[10250,10250,10251,10251,1
0250,10251,-1,0,0]:arc_prd1:AdminServer', oid: '258', implementation: 'weblogic.
management.internal.AdminMBeanHomeImpl@1e22632'
java.lang.SecurityException: [Security:090398]Invalid Subject: admin.
java.lang.SecurityException: [Security:090398]Invalid Subject: admin
The code:
public void checkWebLogicServerState( String user, String pass, String url ) throws Exception {
MBeanHome home = Helper.getAdminMBeanHome( user, pass, url );
Set beans = home.getMBeansByType( "Server", home.getDomainName( ));
for( Iterator iter = beans.iterator( ); iter.hasNext( );){
WebLogicMBean bean = (WebLogicMBean)iter.next( );
WebLogicObjectName objName = bean.getObjectName( );
String serverName = objName.getName( );
String location = objName.getLocation( );
ServerRuntimeMBean serverRuntimeMBean = null;
try {
serverRuntimeMBean = (ServerRuntimeMBean)home.getMBean( serverName, "ServerRuntime", home.getDomainName( ), serverName);
String state = serverRuntimeMBean.getState( );
System.out.println( "\t[" + serverName + "] IS " + state + "." );
} catch( Exception ex ) {
System.out.println( "\t[" + serverName + "] IS NOT RUNNING." );
}I worked around the problem by removing the usage of the weblogic.management.Helper and using standard JNDI lookups instead.
Clearly there is a bug in the Helper class that stores securtiy information in a static variable since it cannot be re used within the same JVM/Classloader without sharing the security information.
Used instead:
Environment env = new Environment();
env.setProviderUrl( url );
env.setSecurityPrincipal( user );
env.setSecurityCredentials( pass );
Context ctx = env.getInitialContext( );
home = (MBeanHome)ctx.lookup( MBeanHome.ADMIN_JNDI_NAME ); -
HI,
I am trying to monitor multiple weblogic servers, I am getting the exception when the program is trying to read multiple domains of the same weblogic server version 8.1.
Can any one help me in getting this fix programatically using weblogic.management.*;
I have searched all the sites where I got only a perticular solution which states to maintain the same domain level credentials.
please reply me back if there is a programatical approach to fix this exception.
The exception is given below:
java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[weblogic, Administrators]
at weblogic.rjvm.BasicOutboundRequest.sendReceive(BasicOutboundRequest.java:108)
at weblogic.rmi.internal.BasicRemoteRef.invoke(BasicRemoteRef.java:138)
at weblogic.management.internal.AdminMBeanHomeImpl_811_WLStub.getDomainName(Unknown Source)
at MonitorServers.getDataWeblogic(MonitorServers.java:138)
at MonitorServers.getServers(MonitorServers.java:89)
at MonitorServers.main(MonitorServers.java:352)
Caused by: java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[weblogic, Administrators]
at weblogic.security.service.SecurityServiceManager.seal(SecurityServiceManager.java:682)
at weblogic.rjvm.MsgAbbrevInputStream.getSubject(MsgAbbrevInputStream.java:181)
at weblogic.rmi.internal.BasicServerRef.acceptRequest(BasicServerRef.java:814)
at weblogic.rmi.internal.BasicServerRef.dispatch(BasicServerRef.java:299)
at weblogic.rjvm.RJVMImpl.dispatchRequest(RJVMImpl.java:920)
at weblogic.rjvm.RJVMImpl.dispatch(RJVMImpl.java:841)
at weblogic.rjvm.ConnectionManagerServer.handleRJVM(ConnectionManagerServer.java:222)
at weblogic.rjvm.ConnectionManager.dispatch(ConnectionManager.java:794)
at weblogic.rjvm.t3.T3JVMConnection.dispatch(T3JVMConnection.java:570)
at weblogic.socket.NTSocketMuxer.processSockets(NTSocketMuxer.java:105)
at weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:32)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
Thanks in advanceHi,
I think that if you don't specify the credentials, the current one will be used to connect to the server.
Try to specify the guest identity by explicitely adding the following properties to override the current identity
properties.put(Context.SECURITY_PRINCIPAL, "");
properties.put(Context.SECURITY_CREDENTIALS, "");
Otherwise you will need to setup a trust between the servers.
I Hope this helps.
Giorgio Anastopoulos -
Security 090398 Invalid Subject and TOPLINK-4002 error.
Hi,
I am running a soa application with SOA 11g and keep getting below exceptions from soa weblogic admin console. I can still run the application but don't know how to clean the error. any suggestions how to fix the issue? Thanks in advance.
Call: SQLCall(INSERT INTO COMPOSITE_INSTANCE_FAULT (ID, COMPOSITE_INSTANCE_ID, B
R_CATEGORY, UNIQUE_ID, BINDING_TYPE, CPST_PARTITION_DATE) VALUES (?, ?, ?, ?, ?,
Query: InsertObjectQuery(oracle.integration.platform.instance.CompositeInstanceF
[TopLink Warning]: 2011.07.26 16:17:05.729--ClientSession(99855179)--Exception [
Internal Exception: java.sql.SQLException: java.lang.SecurityException: [Securit
Error Code: 0
####<Jul 26, 2011 3:38:07 PM EDT> <Error> <oracle.integration.platform.instance> <DRSSBRA2913> <AdminServer> <weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@3ac9b3c> <Tksmau5l3NSXhDfOeb7L7ubmyW6lsKrbQVo8ckt0> <> <e893b723eb6fbe4f:-3bb14c3b:13157b3753d:-8000-000000000001b6fa> <1311709087384> <BEA-000000> <oracle.integration.platform.instance.store.DOStore$RetryableException: Exception [TOPLINK-4002] (Oracle TopLink - 11g Release 1 (11.1.1.4.0) (Build 101210)): oracle.toplink.exceptions.DatabaseException
Internal Exception: java.sql.SQLException: java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[Tksmau5l3NSXhDfOeb7L7ubmyW6lsKrbQVo8ckt0]
Error Code: 0
at oracle.integration.platform.instance.store.DOStore.put(DOStore.java:179)
at oracle.integration.platform.instance.error.DOObjectExceptionHandler.recover(DOObjectExceptionHandler.java:41)
at oracle.integration.platform.instance.error.FileBackedExceptionHandler.recoverObjects(FileBackedExceptionHandler.java:309)
at oracle.integration.platform.instance.error.FileBackedExceptionHandler.recover(FileBackedExceptionHandler.java:301)
at oracle.integration.platform.instance.error.FileBackedExceptionHandler.run(FileBackedExceptionHandler.java:355)
at oracle.integration.platform.blocks.executor.WorkManagerExecutor$1.run(WorkManagerExecutor.java:120)
at weblogic.work.j2ee.J2EEWorkManager$WorkWithListener.run(J2EEWorkManager.java:183)
at weblogic.work.DaemonWorkThread.run(DaemonWorkThread.java:30)
Caused by: Exception [TOPLINK-4002] (Oracle TopLink - 11g Release 1 (11.1.1.4.0) (Build 101210)): oracle.toplink.exceptions.DatabaseException
Internal Exception: java.sql.SQLException: java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[Tksmau5l3NSXhDfOeb7L7ubmyW6lsKrbQVo8ckt0]
Error Code: 0
at oracle.toplink.exceptions.DatabaseException.sqlException(DatabaseException.java:282)
at oracle.toplink.jndi.JNDIConnector.connect(JNDIConnector.java:128)
at oracle.toplink.jndi.JNDIConnector.connect(JNDIConnector.java:84)
at oracle.toplink.sessions.DatasourceLogin.connectToDatasource(DatasourceLogin.java:153)
at oracle.toplink.internal.databaseaccess.DatasourceAccessor.connectInternal(DatasourceAccessor.java:273)
at oracle.toplink.internal.databaseaccess.DatabaseAccessor.connectInternal(DatabaseAccessor.java:231)
at oracle.toplink.internal.databaseaccess.DatasourceAccessor.reconnect(DatasourceAccessor.java:478)
at oracle.toplink.internal.databaseaccess.DatabaseAccessor.reconnect(DatabaseAccessor.java:1347)
at oracle.toplink.internal.databaseaccess.DatasourceAccessor.incrementCallCount(DatasourceAccessor.java:251)
at oracle.toplink.internal.databaseaccess.DatasourceAccessor.rollbackTransaction(DatasourceAccessor.java:580)
at oracle.toplink.internal.databaseaccess.DatabaseAccessor.rollbackTransaction(DatabaseAccessor.java:1406)
at oracle.toplink.internal.sessions.AbstractSession.basicRollbackTransaction(AbstractSession.java:369)
at oracle.toplink.threetier.ClientSession.basicRollbackTransaction(ClientSession.java:135)
at oracle.toplink.internal.sessions.AbstractSession.rollbackTransaction(AbstractSession.java:3003)
at oracle.toplink.internal.sessions.UnitOfWorkImpl.rollbackTransaction(UnitOfWorkImpl.java:4486)
at oracle.toplink.internal.sessions.UnitOfWorkImpl.rollbackTransaction(UnitOfWorkImpl.java:4507)
at oracle.toplink.internal.sessions.UnitOfWorkImpl.commitToDatabase(UnitOfWorkImpl.java:1384)
at oracle.toplink.internal.sessions.UnitOfWorkImpl.commitToDatabaseWithChangeSet(UnitOfWorkImpl.java:1427)
at oracle.toplink.internal.sessions.UnitOfWorkImpl.commitRootUnitOfWork(UnitOfWorkImpl.java:1173)
at oracle.toplink.internal.sessions.UnitOfWorkImpl.commit(UnitOfWorkImpl.java:945)
at oracle.integration.platform.instance.store.DOStore.put(DOStore.java:176)
at oracle.integration.platform.instance.error.DOObjectExceptionHandler.recover(DOObjectExceptionHandler.java:40)
at oracle.integration.platform.instance.error.FileBackedExceptionHandler.recoverObjects(FileBackedExceptionHandler.java:308)
... 5 more
Caused by: java.sql.SQLException: java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[Tksmau5l3NSXhDfOeb7L7ubmyW6lsKrbQVo8ckt0]
at weblogic.jdbc.common.internal.JDBCUtil.wrapAndThrowResourceException(JDBCUtil.java:259)
at weblogic.jdbc.common.internal.RmiDataSource.getPoolConnection(RmiDataSource.java:352)
at weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSource.java:369)
at oracle.toplink.jndi.JNDIConnector.connect(JNDIConnector.java:123)
... 26 more
Caused by: java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[Tksmau5l3NSXhDfOeb7L7ubmyW6lsKrbQVo8ckt0]
at weblogic.security.service.SecurityServiceManager.seal(SecurityServiceManager.java:833)
at weblogic.security.service.IdentityUtility.authenticatedSubjectToIdentity(IdentityUtility.java:30)
at weblogic.security.service.RoleManager.getRoles(RoleManager.java:183)
at weblogic.security.service.AuthorizationManager.isAccessAllowed(AuthorizationManager.java:375)
at weblogic.jdbc.common.internal.JDBCUtil.checkPermission(JDBCUtil.java:231)
at weblogic.jdbc.common.internal.ConnectionPool.doAuthorizationCheck(ConnectionPool.java:443)
at weblogic.jdbc.common.internal.ConnectionPool.reserve(ConnectionPool.java:344)
at weblogic.jdbc.common.internal.ConnectionPool.reserve(ConnectionPool.java:324)
at weblogic.jdbc.common.internal.ConnectionPoolManager.reserve(ConnectionPoolManager.java:94)
at weblogic.jdbc.common.internal.RmiDataSource.getPoolConnection(RmiDataSource.java:350)
at weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSource.java:369)
at oracle.toplink.jndi.JNDIConnector.connect(JNDIConnector.java:123)
at oracle.toplink.jndi.JNDIConnector.connect(JNDIConnector.java:84)
at oracle.toplink.sessions.DatasourceLogin.connectToDatasource(DatasourceLogin.java:153)
at oracle.toplink.internal.databaseaccess.DatasourceAccessor.connectInternal(DatasourceAccessor.java:273)
at oracle.toplink.internal.databaseaccess.DatabaseAccessor.connectInternal(DatabaseAccessor.java:231)
at oracle.toplink.internal.databaseaccess.DatasourceAccessor.reconnect(DatasourceAccessor.java:478)
at oracle.toplink.internal.databaseaccess.DatabaseAccessor.reconnect(DatabaseAccessor.java:1348)
at oracle.toplink.internal.databaseaccess.DatasourceAccessor.incrementCallCount(DatasourceAccessor.java:251)
at oracle.toplink.internal.databaseaccess.DatasourceAccessor.rollbackTransaction(DatasourceAccessor.java:580)
at oracle.toplink.internal.databaseaccess.DatabaseAccessor.rollbackTransaction(DatabaseAccessor.java:1407)
at oracle.toplink.internal.sessions.AbstractSession.basicRollbackTransaction(AbstractSession.java:369)
at oracle.toplink.threetier.ClientSession.basicRollbackTransaction(ClientSession.java:135)
at oracle.toplink.internal.sessions.AbstractSession.rollbackTransaction(AbstractSession.java:3003)
at oracle.toplink.internal.sessions.UnitOfWorkImpl.rollbackTransaction(UnitOfWorkImpl.java:4487)
at oracle.toplink.internal.sessions.UnitOfWorkImpl.rollbackTransaction(UnitOfWorkImpl.java:4508)
at oracle.toplink.internal.sessions.UnitOfWorkImpl.commitToDatabase(UnitOfWorkImpl.java:1385)
at oracle.toplink.internal.sessions.UnitOfWorkImpl.commitToDatabaseWithChangeSet(UnitOfWorkImpl.java:1427)
at oracle.toplink.internal.sessions.UnitOfWorkImpl.commitRootUnitOfWork(UnitOfWorkImpl.java:1173)
at oracle.toplink.internal.sessions.UnitOfWorkImpl.commit(UnitOfWorkImpl.java:945)
at oracle.integration.platform.instance.store.DOStore.put(DOStore.java:176)
at oracle.integration.platform.instance.error.DOObjectExceptionHandler.recover(DOObjectExceptionHandler.java:41)
at oracle.integration.platform.instance.error.FileBackedExceptionHandler.recoverObjects(FileBackedExceptionHandler.java:309)
... 5 more
>
Regards,
Kelvin.I had the same issue, it got resolved after closing the Context in finally block
-
Security Problem when Access Other File types
we have report files in pdf and excel that generated from java.
we then call this file from browser through URL :http://java1.sdc-net/msp/excel/result/workbook.xls.
this just work fine, but when we implement j2ee declarative security constraint (we use custom jdbc realms):
<security-constraint>
<web-resource-collection>
<web-resource-name>root</web-resource-name>
<url-pattern>/index.htm</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>user</role-name>
<role-name>master</role-name>
</auth-constraint>
</security-constraint>
its didn't work anymore.
the jsp's and servlet just work fine. but the others (pdf and excel) didn't work.
am i missed something ?Hi ,
What kind of errors are you getting ?.Do you able to login without any problem ?.Could you enable the log level in security to FINEST and set the Audit enabled to true and run the application. It will tell you what's going wrong.
Let us know the result and please post the logs.
--Sankar
Maybe you are looking for
-
Can not be installed link for windows7 64bit
Can not be installed link, I installed the first version, but later found that there are updates, updated the next update is unsuccessful, I deleted deleted unsuccessful, myself manually deleted.Download The latest version 101_b015_multilanguage, ins
-
How do i edit the info of any book in ibook
previusly it was easy to edit onfo of any book using itune but now with mavericks books are stored in ibook and there is no option for editing info of any book
-
QuickTime 10 wont open/respond
My QT will not respond, I don't have the sligest clue as to what happend. I am curently using the latest software update Mac OS X Lion 10.7.4 . Have anyone out there have this type of issue? If so could you be kind to tell ma how you fix it? Thanks
-
All of my files in itunes disappeared. help me? please?
can anybody please please please help me? i tried downloading the new version of itunes. around the second week of feb, that kinda failed because it was taking so long because of my internet connection and because i needed to be somewhere. so now eve
-
"Integration Builder: Design" only works well on server
Both TCD: SXMB_IFR and "http://host:port/rep/start/index.jsp" work well on both clients and server. We know, when we want to visit the "Integration Builder: Design" in "http://host:port/rep/start/index.jsp", a logon screen displays. The problem is i