[JBoss JIRA] Created: (EJBTHREE-918) problem with security principal then using @PreUpdate annotation on entity
by Ramil Israfilov (JIRA)
problem with security principal then using @PreUpdate annotation on entity
--------------------------------------------------------------------------
Key: EJBTHREE-918
URL: http://jira.jboss.com/jira/browse/EJBTHREE-918
Project: EJB 3.0
Issue Type: Bug
Components: Security
Affects Versions: EJB 3.0 RC9 - FD
Reporter: Ramil Israfilov
We have an entity which is annotated using an @EntityListener(SecurityEntityListener.class). On this SecurityEntityListener class we have methods which a annotated using @PrePersist and @PreUpdate they are identical and do some security check:
------------
void isAllowed(SecuredObject object) {
Subject subject = SecurityAssociation.getSubject();
Principal principal = SecurityAssociation.getPrincipal();
if (principal == null || subject == null) {
SecurityException e = new SecurityException("No principal/subject for EJB session, can't persist object class: " + object.getClass() + " object: " + object);
log.error(e);
throw e;
}
if (isAdministrator()) {
return;
}
....
throw new SecurityException("Session with subject " + subject + "doesn't have right to work with this object:" + object);
}
public static boolean isAdministrator() {
Subject subject = SecurityAssociation.getSubject();
if (subject == null) {
log.warn("No subject assosiated with execution thread");
return false;
}
Set<Group> set = subject.getPrincipals(Group.class);
if (set == null)
return false;
for (Principal p : set) {
Group group = (Group) p;
if (group != null && ROLES_GROUP_NAME.equals(group.getName())) {
Enumeration enumeration = group.members();
for (; enumeration.hasMoreElements();) {
Principal role = (Principal) enumeration.nextElement();
if (role != null && role instanceof Principal && ADMIN_ROLE.equals(((Principal) role).getName())) {
if(log.isDebugEnabled()) log.debug("User will get administrator access to the database");
return true;
}
}
}
}
return false;
}
------------
This entity is persisted/update from EJB3 stateless bean which is protected by @SecurityDomain("ourdomain") annotation.
We have our own jboss module for this domain which do login of user and assigning of roles from database.
This EJB3 bean is called from MDB:
onMessage(Message msg){
...
final String user = msg.getStringProperty(PROCESS_USER);
final String password = msg.getStringProperty(PROCESS_PASSWORD);
login = JAASLoginHelper.getLoginContext(user, password);
login.login();
InitialContext ctx = new InitialContext();
ExecutorInterface executor = (ExecutorInterface) ctx
.lookup(beanName);
auditId = executor.setResultData(properties, obj1, jmsId);
...
}
In method setResultData we perform persist or update (if it is already exists) of entity
If we do persist then everything works ok.
But if we do update of object then isAdministrator method returns false and we have a securityexception as result.
It seems that during commit of JMS message (we are using RDBMS to store jms messages) EJB3 container is trying to do a flush() and at this time securityprincipal is lost.
Strange thing that it works with @PrePersist annotation and doesn't work with @PreUpdate
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
19 years, 4 months
[JBoss JIRA] Created: (JBPORTAL-1316) PortletTagHandler : bug and patch / portlet in layout page
by Antoine Herzog (JIRA)
PortletTagHandler : bug and patch / portlet in layout page
----------------------------------------------------------
Key: JBPORTAL-1316
URL: http://jira.jboss.com/jira/browse/JBPORTAL-1316
Project: JBoss Portal
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Portal Theme
Affects Versions: 2.4.1 Final
Environment: JBPortal 2.4.1
Reporter: Antoine Herzog
Assigned To: Julien Viet
Priority: Minor
The PortletTagHandler do nothing.
Can't show a window with this tag in the layout jsp file.
(the "region" tag works, but this special "portlet" tag to show only one window, without the region relation, does not work).
the bug : the page.getWindowContext(windowID) needs the window id.
in the code, it is used with the window Name : page.getWindowContext(windowName)
todo : rewrite the code so it uses the window ID.
The patch : replace the code with the one here under.
In the doTag() method, from :
if (page.getWindowContext(windowName) == null)
{
log.debug("no such window on this page. Page [" + page.getPageName() + "] Window [" + windowName + "]");
return;
}
.../...
To : the end of the method.
Working code :
String windowID = null;
// we have the windowName (which is the window name), but we need the
// window id
Map portletContexts = page.getWindowContextMap();
for (Iterator i = portletContexts.keySet().iterator(); i.hasNext();) {
windowID = (String) i.next();
WindowContext portletContext = (WindowContext) portletContexts
.get(windowID);
if (windowName.equals(portletContext.getWindowName())) {
if (log.isDebugEnabled()) {
log.debug("found the portlet to render: " + windowName);
}
break;
}
}
if (windowID == null) {
log
.warn("can't find the window id of the window name on this page. Page ["
+ page.getPageName()
+ "] Window ["
+ windowName
+ "]. This window won't be shown in page.");
return;
}
if (page.getWindowContext(windowID) == null) {
log.warn("no such window on this page. Page [" + page.getPageName()
+ "] Window name [" + windowName + "]" + "] Window Id ["
+ windowID + "]");
return;
}
WindowContext windowContext = page.getWindowContext(windowID);
RenderContext renderContext = (RenderContext) request
.getAttribute(LayoutConstants.ATTR_RENDERCONTEXT);
renderContext = renderContext.getContext(windowContext);
try {
renderContext.render();
out.write(renderContext.getMarkupFragment().toString());
out.flush();
} catch (RenderException e) {
throw new JspException(e);
}
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
19 years, 4 months
[JBoss JIRA] Created: (EJBTHREE-917) Cannot deploy ear with log-jars in isolated mode
by Oskar Carlstedt (JIRA)
Cannot deploy ear with log-jars in isolated mode
------------------------------------------------
Key: EJBTHREE-917
URL: http://jira.jboss.com/jira/browse/EJBTHREE-917
Project: EJB 3.0
Issue Type: Bug
Affects Versions: EJB 3.0 RC9 - Patch 1
Environment: JBoss 4.0.5.GA with JBossWs 1.2.0 SP1, Windows Vista Enterprise Ed. (Possible all)
Reporter: Oskar Carlstedt
Hello!!
This is a short summary of my post at your forum http://www.jboss.org/index.html?module=bb&op=viewtopic&t=104337. I don't know if to place this in the EKB3 project or in the AS project. Maybe it belongs to the AS project.
Deploying below EAR file gives an error telling me "EJBLocal is not visible..."
A std. EAR file can contain a jar file that are used by the EJB- and web modules packed within the EAR file. Doing this with an EAR containing a war file having JAX-WS web service and a jar file containing a simple stateless Session bean. I run JBoss 4.0.5.GA in isolated mode.
My EAR file looks like:
Code:
my-test-ear
beans.jar (having a MANIFEST.MF file with classpath pointing to lib/...)
jaxws-web.war (having a MANIFEST.MF with classpath pointing to lib/...)
/lib
log4j.jar
commons-logging.jar
xbean.jar
xmlpublic.jar
saxon.jar
...
/META-INF
application.xml
MANIFEST.MF
jboss-app.xml (containing a loader-repository-tag with valie my-ear:app=ejb3)
************ application.xml ****************
<?xml version="1.0" encoding="UTF-8"?>
<application xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/application_1_4.xsd" version="1.4">
<description>my-test</description>
<display-name>my-test</display-name>
<module>
<ejb>my-test-beans.jar</ejb>
</module>
<module>
<web>
<web-uri>my-test-jaxws-web.war</web-uri>
<context-root>/my-test-jaxws-web</context-root>
</web>
</module>
</application>
************** jboss-app.xml *****************
<!DOCTYPE jboss-app
PUBLIC "-//JBoss//DTD J2EE Application 1.4//EN"
"http://www.jboss.org/j2ee/dtd/jboss-app_4_0.dtd">
<jboss-app>
<loader-repository>my-test:app=ejb3</loader-repository>
</jboss-app>
Here is the contents of my beans.jar:
Code:
my-test-beans.jar
META-INF
MANIFEST.MF
maven
my-test
my-test-beans
pom.xml
pom.properties
my
beans
TestBean.class
***************** TestBean.java ****************
package my.test;
import javax.ejb.Stateless;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.xmlbeans.XmlObject;
@Stateless
public class TestBean implements Test {
/**
* Declare a logger to use in this class
*/
private final static Log log = LogFactory.getLog(TestBean.class);
public XmlObject doSomething(XmlObject theRequestXmlObject) {
return theRequestXmlObject;
}
}
******************* Test.java *********************
package my.test;
public interface Test {
public org.apache.xmlbeans.XmlObject doSomething(org.apache.xmlbeans.XmlObject theRequestXmlObje
ct);
}
And here is what my war fil looks like
Code:
my-test-jaxws-web.war
META-INF
MANIFEST.MF
maven
my-test
my-test-jaxws-web
pom.xml
pom.properties
WEB-INF
wsdl
test.wsdl
test.xsd
classes
my
test
TestServiceEnpoint.class
web.xml
********************** TestServiceEndpoint.java ******************
package my.test;
import java.io.ByteArrayOutputStream;
import java.lang.reflect.Method;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import javax.ejb.Stateless;
import javax.naming.InitialContext;
import javax.xml.transform.OutputKeys;
import javax.xml.transform.Source;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMResult;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import javax.xml.ws.Provider;
import javax.xml.ws.Service;
import javax.xml.ws.ServiceMode;
import javax.xml.ws.WebServiceContext;
import javax.xml.ws.WebServiceException;
import javax.xml.ws.WebServiceProvider;
import javax.xml.ws.handler.MessageContext;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.xmlbeans.XmlObject;
import org.apache.xmlbeans.XmlOptions;
import org.w3c.dom.Node;
@Stateless
@WebServiceProvider(
serviceName = "Test",
portName = "TestSoap11Port",
targetNamespace = "http://my-test/service",
wsdlLocation = "WEB-INF/wsdl/test.wsdl")
@ServiceMode(value = Service.Mode.PAYLOAD)
public class TestServiceEndpoint implements Provider<Source> {
/**
* Declare a logger to use
*/
private final static Log log = LogFactory.getLog(TestServiceEndpoint.class);
/**
* The sei to use
*/
private Object sei = null;
/**
* The soapaction http header. Just a string with the value 'soapaction'
*/
private static final String HTTP_HEADER_SOAP_ACTION = "soapaction";
@Resource
protected WebServiceContext webServiceContext;
/**
* Does everything that must be done. This method is a kind of dispatcher
* that finds the business method to invoke. Invokes the method and
* serializes the response.
*/
public Source invoke(Source requestSource) {
try {
// get transformer and set output to xml
Transformer transformer = TransformerFactory.newInstance()
.newTransformer();
transformer.setOutputProperty(OutputKeys.METHOD, "xml");
// holder of encoding, used in debug
String encoding = null;
// get everything as a dom result
DOMResult domResult = new DOMResult();
transformer.transform(requestSource, domResult);
// get dom node from dom result
Node domNode = domResult.getNode();
// let xml beans parse the dom node
XmlObject xmlRequestObject = XmlObject.Factory.parse(domNode);
if (log.isDebugEnabled()) {
// get everything as a stream result
ByteArrayOutputStream outTmpStream = new ByteArrayOutputStream();
StreamResult streamResult = new StreamResult();
streamResult.setOutputStream(outTmpStream);
// transform everything into the out stream
transformer.transform(requestSource, streamResult);
// get encoding of incomming request, default to utf-8
String tmpContent = new String(outTmpStream.toByteArray());
String encodingStartToken = "encoding=\"";
String encodingEndToken = "\"";
int encodingStart = tmpContent.indexOf(encodingStartToken);
if(encodingStart != -1) {
// get end index of encoding
encodingStart = encodingStart + encodingStartToken.length();
int encodingEnd = tmpContent.indexOf(encodingEndToken, encodingStart);
// set new encoding
encoding = tmpContent.substring(encodingStart, encodingEnd);
}
else {
// default encoding is UTF-8
encoding = "UTF-8";
}
// get a string reppresentation of incomming request
String xmlRequestString = new String(outTmpStream.toByteArray(), encoding);
log.debug("Incomming request:\n" + xmlRequestString);
}
// instantiate the sei
InitialContext initialContext = new InitialContext();
sei = initialContext.lookup("my-test/TestBean/local");
// get business method
Method wsdlJavaMethod = getWsdlJavaMethod();
// invoke method
XmlObject xmlResponseObject = (XmlObject) wsdlJavaMethod.invoke(sei, xmlRequestObject);
// if debug, debug response
if(log.isDebugEnabled()) {
// create xml options
XmlOptions xmlOptions = new XmlOptions();
xmlOptions.setSavePrettyPrint();
xmlOptions.setSavePrettyPrintIndent(4);
xmlOptions.setUseDefaultNamespace();
// creat a byte arry stream where to print result
ByteArrayOutputStream tmpStream = new ByteArrayOutputStream();
xmlResponseObject.save(tmpStream, xmlOptions);
// debug result
log.debug("Outgoing response:\n" + new String(tmpStream.toByteArray(), encoding));
}
// return the object
return new DOMSource(xmlResponseObject.newDomNode());
} catch (RuntimeException re) {
throw re;
} catch (Exception e) {
throw new WebServiceException(e);
}
}
private Method getWsdlJavaMethod() {
// get message context
MessageContext messageContext = webServiceContext.getMessageContext();
// get request headers from message context
Map<String, ?> requestHeaders = (Map<String, ?>) messageContext
.get(MessageContext.HTTP_REQUEST_HEADERS);
// get soap action header
List<String> soapactions = (List<String>) requestHeaders
.get(HTTP_HEADER_SOAP_ACTION);
// ceck soapaction assertions
if (soapactions == null || soapactions.size() != 1) {
// one soapaction must be given per each request
throw new WebServiceException(
"...");
}
// get soapaction
String soapaction = soapactions.get(0);
log.debug("Got soapaction httpheader: " + soapaction);
// extract method name
String methodName = extractJavaMethodName(soapaction);
log.debug("Extracted method name from soapaction: " + methodName);
// get the method to invoke
Method wsdlJavaMethod;
try {
wsdlJavaMethod = sei.getClass().getMethod(methodName, new Class<?>[]{XmlObject.class});
// return the found method
return wsdlJavaMethod;
} catch (SecurityException e) {
throw new RuntimeException("...", e);
} catch (NoSuchMethodException e) {
throw new RuntimeException("..." xmlObject)", e);
}
}
/**
* Returns the java method name extracted from a given soap action string.
* This method does not validate the returned value, it just extracts a
* possible java method name.
*
* @param soapaction
* the soap action to extract method from
* @return a java method name
*/
private String extractJavaMethodName(String soapaction) {
String methodName = null;
if(soapaction.indexOf(":") != -1) {
// get part of soapaction after the ':'-character
methodName = soapaction.substring(soapaction.lastIndexOf(":") + 1);
}
else {
// no ':'-character. method name is same as soapaction
methodName = soapaction;
}
// remove trailing cite character and then return
return methodName.substring(0, methodName.length() - 1);
}
}
When I deploy the war file itself (but then having all the dependencies in the WEB-INF/lib folder, that part works. But putting EJB3s and WARs together in an EAR file seems to be a problem.
Deploying the same file again, but without the jars log4j and commons-logging. Wolla!!, It seems to work.
Is this a classloader bug/error? What I mean is. The files I put in my ear are those I want to use, especially in isolated mode. As far as i know it shall not matter if a put a log4j jar in my ear, it shall override the one in the server/default/lib folder. I think this is very important when delivering ready to install archives (an archive I can send to a customer just telling him "drop the ear in the deploy folder and that's it").
After investigation this, I realized the problem is even worse. If I deploy my EAR file with the log4j and commons-logging jars bundled, then I must restart JBoss to be able to deploy the new ear without my logging jars.
Best Regards
Oskar Carlstedt
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
19 years, 4 months
[JBoss JIRA] Created: (JBAS-4206) HDScanner processing does not use correct TCL
by Scott M Stark (JIRA)
HDScanner processing does not use correct TCL
---------------------------------------------
Key: JBAS-4206
URL: http://jira.jboss.com/jira/browse/JBAS-4206
Project: JBoss Application Server
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Deployment services
Reporter: Scott M Stark
Assigned To: Scott M Stark
Fix For: JBossAS-5.0.0.Beta2
Trying to hotdeploy content that needs classes from outside of the bootstrap class loader fails:
18:41:40,574 ERROR [EJBRegistrationDeployer] Error during deployment: vfsfile:/home/svn/JBossHead/jboss-head/build/output/jboss-5.0.0.Beta2/server/default/deploy/aop-mc-jmxtest.jar
org.jboss.deployers.spi.DeploymentException: java.lang.RuntimeException: javax.naming.NoInitialContextException: Cannot instantiate class: org.jnp.interfaces.NamingContextFactory [Root exception is java.lang.ClassNotFoundException: org.jnp.interfaces.NamingContextFactory]
at org.jboss.ejb3.deployers.EJBRegistrationDeployer.deploy(EJBRegistrationDeployer.java:167)
at org.jboss.deployers.plugins.deployer.AbstractSimpleDeployer.commitDeploy(AbstractSimpleDeployer.java:52)
at org.jboss.deployers.plugins.deployer.DeployerWrapper.commitDeploy(DeployerWrapper.java:170)
at org.jboss.deployers.plugins.deployment.MainDeployerImpl.commitDeploy(MainDeployerImpl.java:592)
at org.jboss.deployers.plugins.deployment.MainDeployerImpl.process(MainDeployerImpl.java:476)
at org.jboss.deployers.plugins.deployment.MainDeployerImpl.process(MainDeployerImpl.java:406)
at sun.reflect.GeneratedMethodAccessor102.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.jboss.aop.joinpoint.MethodInvocation.invokeTarget(MethodInvocation.java:121)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:110)
at org.jboss.profileservice.aop.MainDeployerAspect.process(MainDeployerAspect.java:53)
at org.jboss.aop.advice.org.jboss.profileservice.aop.MainDeployerAspect_z_process_1601866242.invoke(MainDeployerAspect_z_process_1601866242.java)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
at AOPContainerProxy$0.process(AOPContainerProxy$0.java)
at org.jboss.system.server.profileservice.hotdeploy.HDScanner.scan(HDScanner.java:247)
at org.jboss.system.server.profileservice.hotdeploy.HDScanner.run(HDScanner.java:193)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:417)
at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:280)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:135)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:65)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:142)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:166)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
at java.lang.Thread.run(Thread.java:595)
MainDeployerImpl.process should probably be installing the current deployer class loader as the TCL.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
19 years, 4 months
[JBoss JIRA] Created: (JBAS-4209) DatabaseServerLoginModule fails if no roles are found
by Felix Ho?feld (JIRA)
DatabaseServerLoginModule fails if no roles are found
-----------------------------------------------------
Key: JBAS-4209
URL: http://jira.jboss.com/jira/browse/JBAS-4209
Project: JBoss Application Server
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Security
Affects Versions: JBossAS-4.0.5.GA
Environment: JBoss 4.0.5.GA, JDK 1.6.0, Windows & Linux
Reporter: Felix Ho?feld
Assigned To: Scott M Stark
I have a problem using the DatabaseServerLoginModule. Login fails during commit() if no roles are defined for a user. The relevant part is in Util.getRoleSets(...):
rs = ps.executeQuery();
if( rs.next() == false )
{
if( trace )
log.trace("No roles found");
if( aslm.getUnauthenticatedIdentity() == null )
throw new FailedLoginException("No matching username found in Roles");
/* We are running with an unauthenticatedIdentity so create an
empty Roles set and return.
*/
Group[] roleSets = { new SimpleGroup("Roles") };
return roleSets;
}
Why is an exception thrown if no roles are returned? At this point the user has authenticated himself. According to the JAAS contract (http://java.sun.com/javase/6/docs/technotes/guides/security/jaas/JAASLMDe...) an exceptions should be thrown if the method fails. In my opinion it is not a failure if no roles are assigned so it should just return an empty role set.
So I suggest to just remove the following lines:
if( aslm.getUnauthenticatedIdentity() == null )
throw new FailedLoginException("No matching username found in Roles");
However, I admit that this might have a security impact on existing sites that rely on failed authentications if no roles are found so it is probably too late to introduce this change. If it is changed a prominent notice in the documentaion would be necessary.
Regards
Felix
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
19 years, 4 months
[JBoss JIRA] Created: (JBAS-3969) IOException: unknown protocol: vfsfile
by Thomas Diesler (JIRA)
IOException: unknown protocol: vfsfile
--------------------------------------
Key: JBAS-3969
URL: http://jira.jboss.com/jira/browse/JBAS-3969
Project: JBoss Application Server
Issue Type: Bug
Security Level: Public (Everyone can see)
Reporter: Thomas Diesler
Fix For: JBossAS-5.0.0.CR1
All webservice tests fail because of
Caused by: java.io.IOException: unknown protocol: vfsfile
at java.net.URL.readObject(URL.java:1217)
at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:946)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1809)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1719)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1908)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1832)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1719)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:348)
at org.jboss.ws.core.jaxrpc.ServiceObjectFactory.getObjectInstance(ServiceObjectFactory.java:112)
An application client is bound into JNDI. At lookup time and object is deserialized that contains a URL property with the vfsfile protocol. It seems that the JNDI layer is not aware of the URLStreamHandlerFactory
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
19 years, 4 months