Client Unmarshaling Eception

when I run my client program:
public class ComputePi {
public static void main(String args[]) {
String name="";
System.setSecurityManager(new RMISecurityManager());
try {
name = java.net.InetAddress.getLocalHost().getHostName();
catch(Exception e) {
e.printStackTrace();
try {
name = "Compute";
Compute comp = (Compute) Naming.lookup(name);
Pi task = new Pi(Integer.parseInt("2"));
BigDecimal pi = (BigDecimal) (comp.executeTask(task));
System.out.println(pi);
} catch (Exception e) {
System.err.println("ComputePi exception: " + e.getMessage());
e.printStackTrace();
I get exception below:
omputePi exception: error unmarshalling return; nested exception is:
     java.lang.ClassNotFoundException: access to class loader denied
java.rmi.UnmarshalException: error unmarshalling return; nested exception is:
     java.lang.ClassNotFoundException: access to class loader denied
     at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
     at java.rmi.Naming.lookup(Naming.java:84)
     at client.ComputePi.main(ComputePi.java:24)
Caused by: java.lang.ClassNotFoundException: access to class loader denied
     at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:424)
     at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:165)
     at java.rmi.server.RMIClassLoader$2.loadClass(RMIClassLoader.java:631)
     at java.rmi.server.RMIClassLoader.loadClass(RMIClassLoader.java:257)
     at sun.rmi.server.MarshalInputStream.resolveClass(MarshalInputStream.java:200)
     at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1513)
     at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1435)
     at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1626)
     at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
     at java.io.ObjectInputStream.readObject(ObjectInputStream.java:324)
     ... 3 more
Caused by: java.security.AccessControlException: access denied (java.io.FilePermission C:\engine\classes\- read)
     at java.security.AccessControlContext.checkPermission(AccessControlContext.java:269)
     at java.security.AccessController.checkPermission(AccessController.java:401)
     at java.lang.SecurityManager.checkPermission(SecurityManager.java:524)
     at sun.rmi.server.LoaderHandler$Loader.checkPermissions(LoaderHandler.java:1132)
     at sun.rmi.server.LoaderHandler$Loader.access$000(LoaderHandler.java:1086)
     at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:388)
     ... 12 more

David Aharoni <[email protected]> writes:
I have a Tuxedo client that calls a WLS EJB.The code is based on the samples\examples\iiop\ejb\entity WLS example. My Entity bean though, is not container managed. When an object cannot be found on the EJB side a javax.ejb.FinderException is raised. This causes the C unmarshaling code that was generated by the idl compiler to blowup in:
operator>>(OBB::MarshalBuf & {...}, javax::ejb::FinderEx & {...})
when calling
mb.UnMarshalValue(::javax::ejb::_tc_FinderException, obj);
I have followed the standards demonstrated in the sample for ObjectNotFoundException
still, ObjectNotFoundException works but FinderException does not!
Does anybody have any idea about what can be wrong?My guess is that the exception actually thrown is not
FinderException but some derived subtype. The problem with the C++
mapping is you need to register in the client all the concrete
implementations that might come on the wire.
So find out what the actual exception is and generate IDL for it and
then register it with the orb.
andy

Similar Messages

  • J2SE 1.3 client - Weblogic 8.14 Problem with unmarshal exception

    Hi
    I have problem with using RMI IIOP with J2SE 1.3.1_01 - Weblogic 8.1 SP4. Client is runing good, methods are working perfectly, but when EJB throws my exception, it is not serialized and thrown on client but MarshalException is thrown.
    I did everything as it is in weblogic documentation and I really do not know what to do.
    Also I read in weblogic documentation this note:
    Limitations Using RMI-IIOP on the Client
    Use WebLogic Server with JDK 1.3.1_01 or higher. Earlier versions are not RMI-IIOP compliant. Note the following about these earlier JDKs:
    Do not correctly unmarshal unchecked exceptions.But I am using 1.3.1_01 ...
    When I run it with 1.4 it is of course running without problem.
    Martin
    My Exception :
    java.io.IOException:
         at com.sun.corba.se.internal.io.IIOPInputStream.throwExceptionType(Native Method)
         at com.sun.corba.se.internal.io.IIOPInputStream.simpleReadObject(IIOPInputStream.java:272)
         at com.sun.corba.se.internal.io.ValueHandlerImpl.readValueInternal(ValueHandlerImpl.java:245)
         at com.sun.corba.se.internal.io.ValueHandlerImpl.readValue(ValueHandlerImpl.java:207)
         at com.sun.corba.se.internal.iiop.CDRInputStream.read_value(CDRInputStream.java:1059)
         at com.upsscs.europe.cdmv.spl.ejb.service._SBTelnetKitting_Stub.getPickList(Unknown Source)
         at Pokus.main(Pokus.java:59)
    java.rmi.MarshalException: CORBA MARSHAL 0 No; nested exception is:
         org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge : minor code: 0 completed: No
    org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge : minor code: 0 completed: No
         at com.sun.corba.se.internal.iiop.CDRInputStream.read_value(CDRInputStream.java:1065)
         at com.upsscs.europe.cdmv.spl.ejb.service._SBTelnetKitting_Stub.getPickList(Unknown Source)
         at Pokus.main(Pokus.java:59)
    Exception in thread "main"

    Hi,
    I am sending the supported configuration link
    please go through it.
    http://e-docs.bea.com/platform/suppconfigs/configs81/81_over/overview.html#1146550
    Regards
    Prasanna Yalam

  • Generated WS client is unable to unmarshal returned object array

    Hello,
    I have created web service using Sun jaxws implementation. Several methods of this ws return object array (CustomObj []). When I generate the client (using jaxws-maven-plugin - wsimport) and call these methods I always get
    empty array. I get no errors or warnings. When I generate axis client all works as expected. I think that this issue is related to jaxb but i have tried to switch between several versions ant this didn't help. CustomObj is very simple object with two attributes name and value...
    Thanks for hints...

    Hi Shepy,
    I think mapping an array of objects as response in WSDL messages is somewhat of an issue.
    Instead try moving this array of object into another XSD if i assume you are using XSDs and then make sure that response XSD holds and array of your objects.
    Regards,
    Anand

  • RMI Client UnmarshalException with UNC paths

    I have a 'none' Java application, that has an embedded JVM which is being used as an RMI server to allow communication to the application from a browser. The applet detects the presence of the RMI server and if not detected, will start the application, which in turns starts the RMI server. Once the RMI server is started the Client then invokes the method on the server, and hence into the application.
    If the executable for this application is pathed to either a local or mapped drive then everything works as expected, if I then try to use a UNC path, once the RMI server is started, the client returns an UnmarshalException:
    java.rmi.UnmarshalException: Error unmarshaling return header; nested exception is:
    java.io.EOFException
    java.io.EOFException
    at java.io.DataInputStream.readByte(Unknown Source)
    at sun.rmi.transport.StreamRemoteCall.executeCall(Unknown Source)
    at sun.rmi.server.UnicastRef.invoke(Unknown Source)
    at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
    at java.rmi.Naming.lookup(Unknown Source)
    I guess that the problem is that the serialization process has been started, and as the client starts reading from the datastream the UNC paths cause the EOF Exception. any help on how to get round this problem would be gratefully received. Unfortunately using a mapped drive is not a solution to this problem due to the way the application is being served.

    Hi all,
    It turns out that when the java.policy file is being read, it ignores the servername on the UNC path and therefore looks for a directory of the remaining data of the UNC path for the file. I guess it is now a task of figuring out why this is...

  • Java.rmi.UnmarshalException: Error unmarshaling return header

    Hi,
    We are running an RMI server instance to serve data ( from memory) to clients. It works fine if fewer number of inquiries goes in. But when the number of inquiries are larger, I am getting some exceptions at the client side. The server crashes without throwing any exceptions. Following are the exceptions received at client side:
    java.rmi.UnmarshalException: Error unmarshaling return header; nested exception is:
         java.net.SocketException: Connection reset
         at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:203)
         at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:133)
         at com.emf1.dataserver.KeyFrequencyKeeper_Stub.getDUNSCounts(Unknown Source)
         at com..match.KeyFrequencyKeeperProxy.getKeyKQSs(KeyFrequencyKeeperProxy.java:307)
         at com.emf1.match.KeyGenerator.generateKeys(KeyGenerator.java:453)
         at com.emf1.match.InquiryProcessor.run(InquiryProcessor.java:870)
         at java.lang.Thread.run(Thread.java:534)
    Caused by: java.net.SocketException: Connection reset
         at java.net.SocketInputStream.read(SocketInputStream.java:168)
         at java.io.BufferedInputStream.fill(BufferedInputStream.java:183)
         at java.io.BufferedInputStream.read(BufferedInputStream.java:201)
         at java.io.DataInputStream.readByte(DataInputStream.java:331)
         at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:189)
         ... 6 more
    The period of time, the server keeps on running (before it crashes) is also not the same. Sometimes it works fine without any problem. But most of the time the server crashes after processing some records.
    I don't know why this is happening.
    Please help...
    Thanks in advance..

    I have this error too when I running my rmi server site program.
    I am running it in Linux Environment.
    Anyone got any idea about this?

  • SOAP Response Unmarshal Problem

    I am using the SOAP Proxy Generator to generate stubs from a WSDL file.  This part is okay. 
    When I use a method in the stub, the runtime generates an exception -- "null".  Yes that all it says.  I have verified that there is a SOAP response. You can find the actual response text below.
    I have traced the problem to the following statement in the generated stub:
    <i>perm.unmarshal((SOAPElementImpl) result, container);</i>
    Does anyone know if this SOAP response is something that the SOAP client SDK can support?
    <?xml version="1.0" encoding="utf-8"?>
    <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns5="http://www.themindelectric.com/package/com.esri.is.services.glue.v2.mapimage/" xmlns:ns6="http://www.themindelectric.com/package/com.esri.is.services.common.v2.geom/">
    <soap:Body>
    <n:getMapResponse xmlns:n="http://arcweb.esri.com/v2">
    <Result href="#id0"/>
    </n:getMapResponse>
    <id0 id="id0" soapenc:root="0" xsi:type="ns5:MapImageInfo">
    <mapUrl xsi:type="xsd:string">http://redlandsarcweb.esri.com/out/maps/GDT_ArcWeb_US_mangomap1735235894.jpg</mapUrl>
    <legendUrl xsi:type="xsd:string">http://redlandsarcweb.esri.com/out/maps/GDT_ArcWeb_US_mangomap1735235895.jpg</legendUrl>
    <mapExtent href="#id1"/></id0>
    <id1 id="id1" soapenc:root="0" xsi:type="ns6:Envelope">
    <minx xsi:type="xsd:double">-127.666666666666</minx>
    <miny xsi:type="xsd:double">20.0000000000001</miny>
    <maxx xsi:type="xsd:double">-106.333333333333</maxx>
    <maxy xsi:type="xsd:double">35.9999999999999</maxy>
    </id1>
    </soap:Body>
    </soap:Envelope>

    I'm afraid the response I incuded earlier in this forum is a "touched" version.  I got it by using the response object in the generated stub.
    I spoke to the developers of the web service and the response should look like:
    <n:getMapResponse xmlns:n='http://arcweb.esri.com/v2' xmlns:ns1='http://www.themindelectric.com/package/com.esri.is.services.glue.v2.mapimage/' xmlns:ns2='http://www.themindelectric.com/package/com.esri.is.services.common.v2.geom/'>
    <Result id='id0' xsi:type='ns1:MapImageInfo'>
         <mapUrl
    xsi:type='xsd:string'>http://redlandsarcweb.esri.com/out/maps/GDT_ArcWeb_US_
    blackmap606135221.png
         </mapUrl>
         <legendUrl xsi:type='xsd:string'></legendUrl>
         <mapExtent id='id1' xsi:type='ns2:Envelope'>
              <minx xsi:type='xsd:double'>-117.256667</minx>
              <miny xsi:type='xsd:double'>33.980556</miny>
              <maxx xsi:type='xsd:double'>-117.106667</maxx>
              <maxy xsi:type='xsd:double'>34.1305559999999</maxy>
         </mapExtent>
    </Result>
    </n:getMapResponse>
    Is there a way to get the "actual" SOAP response that was received direct from the web service?  What is the official debugging method?

  • Trying SAML sender-vouches, standalone Java client call to service bus.

    I've built a standalone Java client using Jax-ws. It produces a wsse header containing both a SAMLAttribute and an optional SAMLAuthentication statement.
    I've tried to configure a proxy service on the servicebus (10gR3) using ws-policy (weblogic version, not ws-1.2), configured a SAMLIdentityAsserter (v2), an identity provider partner and a SAMLIdentityNameMapper.
    I get the message weblogic.xml.crypto.wss.SecurityTokenValidateResult@ca32f2[status: false][msg The SAML token is not valid.]
    when sending SAML assertions which looks valid to me.
    If you see something missing or invalid in the SAML, something missing in the configuration or something else, I would be really glad.
    All examples are using a SAMLCredentialmapper, but I'm building a standalone client, so a weblogic SAMLCredentialMapper is out of the question (?).
    request header:
    <S:Header>
    <wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" S:mustUnderstand="1">
    <saml:Assertion xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:exc14n="http://www.w3.org/2001/10/xml-exc-c14n#" xmlns:xs="http://www.w3.org/2001/XMLSchema" AssertionID="1246342701761" IssueInstant="2009-06-30T06:18:21.683Z" Issuer="http://openuri.org/service/customer/contact/contactInformationService" MajorVersion="1" MinorVersion="1">
    <saml:Conditions NotBefore="2009-06-30T06:17:21.683Z" NotOnOrAfter="2009-06-30T07:18:21.683Z"/>
    <saml:AuthenticationStatement AuthenticationInstant="2009-06-30T06:18:21.683Z" AuthenticationMethod="urn:oasis:names:tc:SAML:1.0:am:unspecified">
    <saml:Subject>
    <saml:NameIdentifier Format="urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName" NameQualifier="sb1sk">uid=vsb,ou=smn</saml:NameIdentifier>
    <saml:SubjectConfirmation>
    <saml:ConfirmationMethod>urn:oasis:names:tc:SAML:1.0:cm:sender-vouches</saml:ConfirmationMethod>
    </saml:SubjectConfirmation>
    </saml:Subject>
    </saml:AuthenticationStatement>
    </saml:Assertion>
    </wsse:Security>
    response:
    <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
    <env:Header/>
    <env:Body>
    <env:Fault xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
    <faultcode>wsse:InvalidSecurityToken</faultcode>
    <faultstring>Security token failed to validate. weblogic.xml.crypto.wss.SecurityTokenValidateResult@1061c5e[status: false][msg The SAML token is not valid.]</faultstring>
    </env:Fault>
    </env:Body>
    </env:Envelope>
    If the client leaves out the wsse:security element in the header, the service complains
    <faultstring>No Security header in message but required by policy.</faultstring>
    The SAMLIdentity name mapper is never loaded at all (checked by logging at class loading)
    The configuration in the Identity provider partner:
    audience uri: target:*:/
    issuer uri: /service/customer/contact/contactInformationService (also tried with a unique string equal to what the client sends)
    virtual user: enabled
    confirmation method: sender-vouches
    I am not using any certificates (tryed both with and without)
    Policy in use for the proxy service:
    <?xml version="1.0"?>
    <wsp:Policy
    xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
    xmlns:wssp="http://www.bea.com/wls90/security/policy"
    xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
    xmlns:wls="http://www.bea.com/wls90/security/policy/wsee#part"
    wsu:Id="samlSV"
    >
    <wssp:Identity>
    <wssp:SupportedTokens>
    <wssp:SecurityToken TokenType="http://docs.oasis-open.org/wss/2004/01/oasis-2004-01-saml-token-profile-1.0#SAMLAssertionID">
    <wssp:Claims>
    <wssp:ConfirmationMethod>sender-vouches</wssp:ConfirmationMethod>
    </wssp:Claims>
    </wssp:SecurityToken>
    </wssp:SupportedTokens>
    </wssp:Identity>
    </wsp:Policy>
    Stacktrace:
    weblogic.xml.crypto.wss.WSSecurityException: Security token failed to validate. weblogic.xml.crypto.wss.SecurityTokenVal
    idateResult@a4fc20[status: false][msg The SAML token is not valid.]
    at weblogic.xml.crypto.wss.SecurityImpl.unmarshalAndProcessSecurityToken(SecurityImpl.java:630)
    at weblogic.xml.crypto.wss.SecurityImpl.unmarshalChildren(SecurityImpl.java:556)
    at weblogic.xml.crypto.wss.SecurityImpl.unmarshalInternal(SecurityImpl.java:448)
    at weblogic.xml.crypto.wss.SecurityImpl.unmarshal(SecurityImpl.java:416)
    at weblogic.xml.crypto.wss.api.WSSecurityFactory.unmarshalAndProcessSecurity(WSSecurityFactory.java:66)
    at weblogic.wsee.security.WssServerHandler.processRequest(WssServerHandler.java:35)
    at weblogic.wsee.security.WssHandler.handleRequest(WssHandler.java:74)
    at com.bea.wli.sb.security.wss.WssInboundHandler.processRequest(WssInboundHandler.java:116)
    at com.bea.wli.sb.security.wss.WssHandlerImpl.doInboundRequest(WssHandlerImpl.java:201)
    at com.bea.wli.sb.context.BindingLayerImpl.addRequest(BindingLayerImpl.java:257)
    at com.bea.wli.sb.pipeline.MessageProcessor.processRequest(MessageProcessor.java:66)
    at com.bea.wli.sb.pipeline.RouterManager$1.run(RouterManager.java:508)
    at com.bea.wli.sb.pipeline.RouterManager$1.run(RouterManager.java:506)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
    at weblogic.security.service.SecurityManager.runAs(Unknown Source)
    Edited by: user6080617 on Jun 29, 2009 11:39 PM

    Thank you for the tip. I've tried it, the result is below. It suspect something missing in my configuration, but I do not know what.
    <WSEE:17>Class of cred is: class weblogic.xml.saaj.SOAPElementImpl<SAMLCredentialImpl.<init>:85>
    <WSEE:17>Instantiating SAMLAssertionInfoFactory<SAMLCredentialImpl.<init>:87>
    <WSEE:17>Getting SAMLAssertionInfo from DOM Element<SAMLCredentialImpl.<init>:97>
    <WSEE:17>Got SAMLAssertionInfo<SAMLCredentialImpl.<init>:117>
    <WSEE:17>Assertion ID: 1246358297862<SAMLCredentialImpl.verbose:69>
    <WSEE:17>Assertion CM: urn:oasis:names:tc:SAML:1.0:cm:sender-vouches<SAMLCredentialImpl.verbose:70>
    <WSEE:17>Assertion Subject: uid=vsb,ou=smn<SAMLCredentialImpl.verbose:71>
    <WSEE:17>Assertion Version: 1.1<SAMLCredentialImpl.verbose:72>
    <WSEE:17>Attempting assertIdentity<CSSUtils.assertIdentity:310>
    <WSEE:17>SAML_TARGET_RESOURCE is: /service/customer/contact/contactInformationService<CSSUtils.assertIdentity:312>
    <WSEE:17>Got Principal Authenticator<CSSUtils.assertIdentity:314>
    <WSEE:17>Cred type is: SAML.Assertion.DOM, Node: [saml:Assertion: null]<CSSUtils.assertIdentity:320>
    <WSEE:17>Exception while asserting identity: javax.security.auth.login.LoginException: [Security:090377]Identity Assertion Failed, weblogic.security.spi.IdentityAssertionException: [Security:090380]Identity Assertion Failed, Unsupported Token Type: SAML.Assertion.DOM<CSSUtils.assertIdentity:325>
    <WSEE:17>javax.security.auth.login.LoginException: [Security:090377]Identity Assertion Failed, weblogic.security.spi.IdentityAssertionException: [Security:090380]Identity Assertion Failed, Unsupported Token Type: SAML.Assertion.DOM<CSSUtils.assertIdentity:326>

  • Weblogic.xml.dom.marshal.MarshalException: Failed to unmarshal UsernameToke

    Hello,
    I'm developing an web service client and I have an error when I call the web service :
    *<env:Fault xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">*
    *<faultcode>wsse:InvalidSecurity</faultcode>*
    *<faultstring>weblogic.xml.dom.marshal.MarshalException: Failed to unmarshal {http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd}UsernameToken</faultstring>*
    *</env:Fault>*
    The wsdl has the following policy set:
    *<WL5G3N1:Policy WL5G3N2:Id="ws-policy">*
    *<sp:SupportingTokens>*
    *<wsp:Policy>*
    *<sp:UsernameToken sp:IncludeToken="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702/IncludeToken/AlwaysToRecipient">*
    *<wsp:Policy>*
    *<sp:HashPassword/>*
    *<sp:WssUsernameToken10/>*
    *</wsp:Policy>*
    *</sp:UsernameToken>*
    *</wsp:Policy>*
    *</sp:SupportingTokens>*
    *</WL5G3N1:Policy>*
    *<wsp:UsingPolicy WL5G3N0:Required="true"/>*
    And the SOAP header of my request is as follows :
    *<S:Header>*
    *<wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">*
    *<wsse:UsernameToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">*
    *<wsse:Username>user</wsse:Username>*
    *<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">pVK3p4MC0YJ/qGeb/lMGrrNQBwQ=</wsse:Password>*
    *<wsse:Nonce>NjkwMjk2Mzgw</wsse:Nonce>*
    *<wsse:Created>2012-02-22T14:59:10Z</wsse:Created>*
    *</wsse:UsernameToken></wsse:Security>*
    *</S:Header>*
    Do you know what might be the cause of the error?
    Thank you.
    Edited by: 916856 on Feb 24, 2012 8:39 AM
    Edited by: 916856 on Feb 24, 2012 8:40 AM

    Hello,
    I'm developing an web service client and I have an error when I call the web service :
    *<env:Fault xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">*
    *<faultcode>wsse:InvalidSecurity</faultcode>*
    *<faultstring>weblogic.xml.dom.marshal.MarshalException: Failed to unmarshal {http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd}UsernameToken</faultstring>*
    *</env:Fault>*
    The wsdl has the following policy set:
    *<WL5G3N1:Policy WL5G3N2:Id="ws-policy">*
    *<sp:SupportingTokens>*
    *<wsp:Policy>*
    *<sp:UsernameToken sp:IncludeToken="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702/IncludeToken/AlwaysToRecipient">*
    *<wsp:Policy>*
    *<sp:HashPassword/>*
    *<sp:WssUsernameToken10/>*
    *</wsp:Policy>*
    *</sp:UsernameToken>*
    *</wsp:Policy>*
    *</sp:SupportingTokens>*
    *</WL5G3N1:Policy>*
    *<wsp:UsingPolicy WL5G3N0:Required="true"/>*
    And the SOAP header of my request is as follows :
    *<S:Header>*
    *<wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">*
    *<wsse:UsernameToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">*
    *<wsse:Username>user</wsse:Username>*
    *<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">pVK3p4MC0YJ/qGeb/lMGrrNQBwQ=</wsse:Password>*
    *<wsse:Nonce>NjkwMjk2Mzgw</wsse:Nonce>*
    *<wsse:Created>2012-02-22T14:59:10Z</wsse:Created>*
    *</wsse:UsernameToken></wsse:Security>*
    *</S:Header>*
    Do you know what might be the cause of the error?
    Thank you.
    Edited by: 916856 on Feb 24, 2012 8:39 AM
    Edited by: 916856 on Feb 24, 2012 8:40 AM

  • BEA webservice client has problem in talking to secured microsoft webservic

    Hi,
    I am developing a BEA client (standalone java client using BEA 10 MP1 install) to invoke a microsoft secured webservice which requires a X509 token in the request. I am able to invoke the service successfully but can not validate the response which is signed by server.
    Here is the client code, I am using -
    import javax.xml.rpc.ServiceException;
    import javax.xml.rpc.Stub;
    import weblogic.security.SSL.TrustManager;
    import weblogic.xml.crypto.wss.provider.CredentialProvider;
    import weblogic.xml.crypto.wss.WSSecurityContext;
    import weblogic.wsee.security.bst.ClientBSTCredentialProvider;
    import weblogic.wsee.security.unt.ClientUNTCredentialProvider;
    import weblogic.wsee.security.util.CertUtils;
    import java.util.List;
    import java.util.ArrayList;
    import java.security.cert.X509Certificate;
    import com.accenture.tarpon.*;
    public class Test {
    public static void main(String[] args) throws Exception {
    String username = args[2];
    String password = args[3];
    String wsdl = args[4];
    String clientKeyStore=args[0];
    String clientKeyStorePass=args[1];
    String clientKeyAlias = args[5];
    String clientKeyPass = args[6];
    String serverCertFile = args[7];
    X509Certificate serverCert = (X509Certificate) CertUtils.getCertificate(serverCertFile);
    GetAddress service = new GetAddress_Impl(wsdl);
    Microsoft_X0020_GetAddress port = service.getBasicHttpBinding_Microsoft_X0020_GetAddress();
    List credProviders = new ArrayList();
    //client side BinarySecurityToken credential provider -- x509
    credProviders.add(new ClientBSTCredentialProvider(clientKeyStore, clientKeyStorePass,
    clientKeyAlias, clientKeyPass, "JKS", serverCert));
    credProviders.add(new ClientUNTCredentialProvider(username.getBytes(), password.getBytes()));
    Stub stub = (Stub)port;
    stub._setProperty(WSSecurityContext.CREDENTIAL_PROVIDER_LIST, credProviders);
    stub._setProperty(WSSecurityContext.TRUST_MANAGER,
    new TrustManager(){
    public boolean certificateCallback(X509Certificate[] chain, int validateErr){
    //need to validate if the server cert can be trusted
    for (int i = 0; i < chain.length; i++) {
    System.out.println("Server cert chain: " + chain);
    return true;
    System.out.println("\n\n *** before forming getAddressRequest \n\n");
    GetAddressRequest getAddressRequest = new GetAddressRequest();
    getAddressRequest.setTaxPayerID("MicrosoftGetAddressX509Sign_123");
    GetAddressResponse getAddressResponse = port.getTaxPayerAddress(getAddressRequest);
    System.out.println("\n\n *** after invocation getAddressRequest \n\n");
    printGetAddressResponse(getAddressResponse);
    private static void printGetAddressResponse(GetAddressResponse getAddressResponse){
    System.out.println("\n\n ***** Response from MicrosoftGetAddressService : ***** ");
    System.out.println("\nAddress Line 1 - "+getAddressResponse.getAddressLine1());
    System.out.println("\nAddress Line 2 - "+getAddressResponse.getAddressLine2());
    System.out.println("\nCity - "+getAddressResponse.getCity());
    System.out.println("\nCompany - "+getAddressResponse.getCompany());
    System.out.println("\nState - "+getAddressResponse.getState());
    System.out.println("\nTaxPayerID - "+getAddressResponse.getTaxPayerID());
    System.out.println("\nZip - "+getAddressResponse.getZip());
    System.out.println("\nFirst Name - "+getAddressResponse.getTaxpayerFirstName());
    System.out.println("\nMiddle Name - "+getAddressResponse.getTaxpayerMiddleInitial());
    System.out.println("\nLast Name - "+getAddressResponse.getTaxpayerLastName());
    When I run this, I get this message -
    [java] Exception in thread "main" java.rmi.RemoteException: SOAPFaultException - Faul
    tCode [{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd}
    InvalidSecurity] FaultString [weblogic.xml.dom.marshal.MarshalException: weblogic.xml.cryp
    to.wss.WSSecurityException: Failed to validate signature.] FaultActor [null]No Detail; nes
    ted exception is:
    [java] javax.xml.rpc.soap.SOAPFaultException: weblogic.xml.dom.marshal.MarshalExc
    eption: weblogic.xml.crypto.wss.WSSecurityException: Failed to validate signature.
    [java] at com.accenture.tarpon.Microsoft_X0020_GetAddress_Stub.getTaxPayerAddress
    (Unknown Source)
    [java] at Test.main(Unknown Source)
    [java] Caused by: javax.xml.rpc.soap.SOAPFaultException: weblogic.xml.dom.marshal.Mar
    shalException: weblogic.xml.crypto.wss.WSSecurityException: Failed to validate signature.
    [java] at weblogic.wsee.codec.soap11.SoapCodec.decodeFault(SoapCodec.java:311)
    [java] at weblogic.wsee.ws.dispatch.client.CodecHandler.decodeFault(CodecHandler.
    java:114)
    [java] at weblogic.wsee.ws.dispatch.client.CodecHandler.decode(CodecHandler.java:
    99)
    [java] at weblogic.wsee.ws.dispatch.client.CodecHandler.handleFault(CodecHandler.
    java:87)
    [java] at weblogic.wsee.handler.HandlerIterator.handleFault(HandlerIterator.java:
    304)
    [java] at weblogic.wsee.handler.HandlerIterator.handleResponse(HandlerIterator.ja
    va:264)
    [java] at weblogic.wsee.ws.dispatch.client.ClientDispatcher.handleResponse(Client
    Dispatcher.java:193)
    [java] at weblogic.wsee.ws.dispatch.client.ClientDispatcher.dispatch(ClientDispat
    cher.java:148)
    [java] at weblogic.wsee.ws.WsStub.invoke(WsStub.java:89)
    [java] at weblogic.wsee.jaxrpc.StubImpl._invoke(StubImpl.java:332)
    [java] ... 2 more
    [java] Caused by: weblogic.xml.crypto.wss.WSSecurityException: weblogic.xml.dom.marsh
    al.MarshalException: weblogic.xml.crypto.wss.WSSecurityException: Failed to validate signa
    ture.
    [java] at weblogic.wsee.security.wssp.handlers.WssClientHandler.processInbound(Ws
    sClientHandler.java:144)
    [java] at weblogic.wsee.security.wssp.handlers.WssClientHandler.processResponse(W
    ssClientHandler.java:130)
    [java] at weblogic.wsee.security.wssp.handlers.WssHandler.handleResponse(WssHandl
    er.java:128)
    [java] at weblogic.wsee.handler.HandlerIterator.handleResponse(HandlerIterator.ja
    va:282)
    [java] at weblogic.wsee.handler.HandlerIterator.handleResponse(HandlerIterator.ja
    va:266)
    [java] ... 6 more
    [java] Caused by: weblogic.xml.dom.marshal.MarshalException: weblogic.xml.crypto.wss.
    WSSecurityException: Failed to validate signature.
    [java] at weblogic.xml.crypto.wss.SecurityImpl.unmarshalInternal(SecurityImpl.jav
    a:411)
    [java] at weblogic.xml.crypto.wss.SecurityImpl.unmarshal(SecurityImpl.java:375)
    [java] at weblogic.xml.crypto.wss11.internal.WSS11Factory.unmarshalAndProcessSecu
    rity(WSS11Factory.java:33)
    [java] at weblogic.wsee.security.wssp.handlers.WssClientHandler.processInbound(Ws
    sClientHandler.java:141)
    [java] ... 10 more
    [java] Caused by: weblogic.xml.crypto.wss.WSSecurityException: Failed to validate sig
    nature.
    [java] at weblogic.xml.crypto.wss.SecurityImpl.unmarshalAndProcessSignature(Secur
    ityImpl.java:576)
    [java] at weblogic.xml.crypto.wss.SecurityImpl.unmarshalChildren(SecurityImpl.jav
    a:435)
    [java] at weblogic.xml.crypto.wss.SecurityImpl.unmarshalInternal(SecurityImpl.jav
    a:399)
    [java] ... 13 more
    [java] Caused by: weblogic.xml.crypto.dsig.api.XMLSignatureException
    [java] at weblogic.xml.crypto.dsig.SignedInfoImpl.validateSignature(SignedInfoImp
    l.java:112)
    [java] at weblogic.xml.crypto.dsig.XMLSignatureImpl.validate(XMLSignatureImpl.jav
    a:233)
    [java] at weblogic.xml.crypto.wss.SecurityImpl.unmarshalAndProcessSignature(Secur
    ityImpl.java:568)
    [java] ... 15 more
    [java] Caused by: weblogic.xml.crypto.api.KeySelectorException: weblogic.xml.crypto.w
    ss.WSSecurityException: Failed to resolve security token for issuer serial weblogic.xml.cr
    ypto.dsig.keyinfo.X509IssuerSerialImpl@df9095
    [java] at weblogic.xml.crypto.common.keyinfo.KeyResolver.setupKeyProviderFromCont
    ext(KeyResolver.java:312)
    [java] at weblogic.xml.crypto.common.keyinfo.KeyResolver.getKeyFromSTR(KeyResolve
    r.java:269)
    [java] at weblogic.xml.crypto.common.keyinfo.KeyResolver.select(KeyResolver.java:
    124)
    [java] at weblogic.xml.crypto.dsig.SignedInfoImpl.getVerifyKey(SignedInfoImpl.jav
    a:223)
    [java] at weblogic.xml.crypto.dsig.SignedInfoImpl.validateSignature(SignedInfoImp
    l.java:110)
    [java] ... 17 more
    [java] Caused by: weblogic.xml.crypto.wss.WSSecurityException: Failed to resolve secu
    rity token for issuer serial weblogic.xml.crypto.dsig.keyinfo.X509IssuerSerialImpl@df9095
    [java] at weblogic.xml.crypto.wss.BinarySecurityTokenHandler.getTokenByIssuerSeri
    al(BinarySecurityTokenHandler.java:147)
    [java] at weblogic.xml.crypto.wss.BinarySecurityTokenHandler.getSecurityToken(Bin
    arySecurityTokenHandler.java:81)
    [java] at weblogic.xml.crypto.common.keyinfo.KeyResolver.setupKeyProviderFromCont
    ext(KeyResolver.java:304)
    [java] ... 21 more
    At the server side, Microsoft has imported client cert and also on the client side, I have imported server cert in jdk's cacerts file.
    Please help.
    Thanks in advance,
    Manoj

    Hello experts,
    Do you know is there a way to avoid "SSL handshake failure." error without importing a public key to the default keystore?
    When I access WebLogic WebServices over SSL from Service Control which is generated by WL WorkSpaces 10.2,
    it used default key and there is no additional key manipulation required.
    Is there any way to configure a flag to the service control or WL server to automatically trust the end point host.
    As far as I know at this point is that I need to have public key in PEM format and use keytool to import that into client skystore file. Is this the only way it can solve this handshake issue?
    Any pointers are appreciated. _J                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • Why cannot execute DB operation at client side with dynamic proxy?

    I want to execute a DB operation at client side with dynamic proxy. that is bypass EJBs to execute DB operation. And there is a data source in weblogic server, and I get an EJB instance using dynamic proxy, get connection using this instance, then invoke executeQuery method. But it is failed, and throw exception when execute "conn.setAutoCommit(false)" as below:
    <Caused by: weblogic.rmi.extensions.RemoteRuntimeException: Unexpected Exception - with nested exception:
    [java.rmi.UnmarshalException: Could not unmarshal method ID; nested exception is:
    java.rmi.UnmarshalException: Method not found: 'newArrayDataResultSet(Loracle.sql.ARRAY;JILjava.util.Map;)']
    at weblogic.jdbc.rmi.internal.ConnectionImpl_weblogic_jdbc_wrapper_PoolConnection_oracle_jdbc_driver_OracleConnection_813_WLStub.setAutoCommit(Unknown Source)
    at weblogic.jdbc.rmi.SerialConnection_weblogic_jdbc_rmi_internal_ConnectionImpl_weblogic_jdbc_wrapper_PoolConnection_oracle_jdbc_driver_OracleConnection_813_WLStub.setAutoCommit(Unknown Source)>
    but it is no exception and run well using EJB, who can tell me why? if it is a weblogic limitation? and my version of WLS is 8.1 sp3

    Hi,
    Do you create the connection object on the server and pass it over to the client, we do not allow passing the connection object over the wire.

  • Quartz schedular problem accessing thru RMI client

    Hi,
    I am trying to access Quartz scheduler through RMI client/server.
    Quartz scheduler RMI is starting up properly.
    When I run the RMI client I am receiving the following error.
    =================================================================
    org.quartz.SchedulerException: Error communicating with remote scheduler. [See nested exception: java.rmi.UnmarshalException: Error unmarshaling return; nested exception is:
         java.io.InvalidClassException: oracle.classloader.util.AnnotatedNoClassDefFoundError; local class incompatible: stream classdesc serialVersionUID = -4364152148004017014, local class serialVersionUID = -687990861161016914]
         at org.quartz.impl.RemoteScheduler.invalidateHandleCreateException(RemoteScheduler.java:135)
         at org.quartz.impl.RemoteScheduler.scheduleJob(RemoteScheduler.java:335)
         at net.nighttale.scheduling.rmi.QuartzClient.main(QuartzClient.java:17)
    * Nested Exception (Underlying Cause) ---------------
    java.rmi.UnmarshalException: Error unmarshaling return; nested exception is:
         java.io.InvalidClassException: oracle.classloader.util.AnnotatedNoClassDefFoundError; local class incompatible: stream classdesc serialVersionUID = -4364152148004017014, local class serialVersionUID = -687990861161016914
         at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:217)
         at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:126)
         at org.quartz.core.QuartzScheduler_Stub.scheduleJob(Unknown Source)
         at org.quartz.impl.RemoteScheduler.scheduleJob(RemoteScheduler.java:332)
         at net.nighttale.scheduling.rmi.QuartzClient.main(QuartzClient.java:17)
    Caused by: java.io.InvalidClassException: oracle.classloader.util.AnnotatedNoClassDefFoundError; local class incompatible: stream classdesc serialVersionUID = -4364152148004017014, local class serialVersionUID = -687990861161016914
         at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:519)
         at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1546)
         at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1460)
         at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1693)
         at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1299)
         at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1912)
         at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1836
    =============================================================
    My client and server quartz properties are as follows.
    Client properties
    org.quartz.scheduler.instanceName = DefaultQuartzScheduler
    org.quartz.scheduler.rmi.proxy = true
    org.quartz.scheduler.rmi.registryHost = 127.0.0.1
    org.quartz.scheduler.rmi.registryPort = 1098
    Server properties
    # Default Properties file for use by StdSchedulerFactory
    # to create a Quartz Scheduler Instance, if a different
    # properties file is not explicitly specified.
    org.quartz.scheduler.instanceName = DefaultQuartzScheduler
    #org.quartz.scheduler.instanceName = Sched1
    org.quartz.scheduler.rmi.export = true
    #org.quartz.scheduler.rmi.proxy = false
    org.quartz.scheduler.rmi.registryHost = 127.0.0.1
    org.quartz.scheduler.rmi.registryPort = 1098
    org.quartz.scheduler.rmi.createRegistry = true
    org.quartz.scheduler.wrapJobExecutionInUserTransaction = false
    org.quartz.threadPool.class = org.quartz.simpl.SimpleThreadPool
    org.quartz.threadPool.threadCount = 10
    org.quartz.threadPool.threadPriority = 5
    org.quartz.threadPool.threadsInheritContextClassLoaderOfInitializingThread = true
    org.quartz.jobStore.misfireThreshold = 5000
    #org.quartz.jobStore.class = org.quartz.simpl.RAMJobStore
    org.quartz.jobStore.class = org.quartz.impl.jdbcjobstore.JobStoreTX
    org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.oracle.OracleDelegate
    org.quartz.jobStore.useProperties = false
    org.quartz.jobStore.dataSource = demoDS
    org.quartz.jobStore.tablePrefix = QRTZ_
    org.quartz.jobStore.isClustered = false
    #============================================================================
    # Configure Datasources
    #============================================================================
    org.quartz.dataSource.demoDS.driver = oracle.jdbc.driver.OracleDriver
    org.quartz.dataSource.demoDS.URL = jdbc:oracle:thin:@demou.abc.com:1521:orcl
    org.quartz.dataSource.demoDS.user = demo
    org.quartz.dataSource.demoDS.password = oracle
    org.quartz.dataSource.demoDS.maxConnections = 5
    org.quartz.dataSource.demoDS.validationQuery=select 0 from dual
    #org.quartz.dataSource.demoDS.validationQuery=select lock_name from qrtz_locks where lock_name = 'TRIGGER_ACCESS'
    #============================================================================
    # Configure Plugins
    #============================================================================
    # Uncomment the following to get logging of job execution events...
    #org.quartz.plugin.jobHistory.class = org.quartz.plugins.history.LoggingJobHistoryPlugin
    # Uncomment the following to get logging of trigger firing events...
    #org.quartz.plugin.triggHistory.class = org.quartz.plugins.history.LoggingTriggerHistoryPlugin
    #============================================================================
    # Configure Listeners
    #============================================================================
    #org.quartz.jobListener.dummy.class = org.quartz.examples.DumbJobListener
    Appreciate your quick response.
    Regards,
    Nishi

    What I did today is that we connected the client PC directly with the server through a switch. So keep in mind please, that for the following informations there is no firewall involved whatsoever.
    I've just checked the communication log on the server with the microsoft network monitor. the communication proceedes in the following manner:
    1) the client calls the server from a random source port(src) onto the specified destination port(dst) 1088.
    2) the server application replies from (src)1088 to (dst)1052.
    3) now comes two client calls again from (src)1052 to (dst)1088.
    4) and then the server sends something two times from 1088 to 1052
    and that's it! end of communication. of course then it comes the above mentioned error.
    What the most amazes me is that although I explicitly specify for the client as well, that the rmi registry should be available on the remote port 1088, still it uses a random port (in this case 1052). Could this be alright? After all, what port the client uses to reach for the remote registry could be random I guess...
    What I see on the client side with the trace prints is that during the client initialization first a connection will be made on a local machine with port # -1 and just after that calls the remote server. But in that case I don't get it why it prints the 1088 if under the hood is a 1052 or other random port...
    Meanwhile, on the server side I get a trace message from the custom security manager that an accept on the random port (1052) has been successful. but after that no more printouts.
    Oh, and one more thing... did I mentioned that I implemented a pure socket client/server thingy and it works just fine? with or without firewall.

  • Can weblogic client takes empty arrays being returned.

    Hi All:
    I am using weblogic 9.2 to generate the web service client code.
    Here is my build.xml file to build the java client code:
    >
    <project name="webservices-TEST" default="client">
    <taskdef name="clientgen" classname="weblogic.wsee.tools.anttasks.ClientGenTask" />
    <target name="client" >
    <clientgen
         wsdl=" http://test:7035/TEST-engine/services/accumulator.wsdl"
         destDir="clientclasses"
         packageName="com.TEST.TEST2.caps.wsclient"
         >
    </clientgen>
    </target>
    </project>
    Here is my client code to test the web service.
    >
    public class testWebServicesClient
         public static void main(String[] test)
              try {
              Long recipientId = 11597997730620L;
              AccumulatorWS impl = new AccumulatorWS_Impl("http://test:7035/TEST-engine/services/accumulator.wsdl");
              IAccumulatorWS iAccWS1 = impl.getIAccumulatorWS();
              AccumulatorResponse response = iAccWS1.getCurrentAccumulators(recipientId, "", "", "", "en", "");
              System.err.println("The status is: " + response.getStatus());
              catch (Exception e) {
              e.printStackTrace();
    I get the following error:
    java.rmi.RemoteException: Illegal Capacity: -1; nested exception is:
         java.lang.IllegalArgumentException: Illegal Capacity: -1
         at com.test.wsclient.IAccumulatorWS_Stub.getCurrentAccumulators(IAccumulatorWS_Stub.java:46)
         at test.testWebServicesClient.main(testWebServicesClient.java:27)
    Caused by: java.lang.IllegalArgumentException: Illegal Capacity: -1
         at java.util.ArrayList.<init>(ArrayList.java:111)
         at com.bea.staxb.runtime.internal.util.collections.ArrayListBasedObjectAccumulator.createNewStore(ArrayListBasedObjectAccumulator.java:42)
         at com.bea.staxb.runtime.internal.util.collections.ObjectAccumulator.<init>(ObjectAccumulator.java:39)
         at com.bea.staxb.runtime.internal.util.collections.ArrayListBasedObjectAccumulator.<init>(ArrayListBasedObjectAccumulator.java:31)
         at com.bea.staxb.runtime.internal.util.collections.AccumulatorFactory.createAccumulator(AccumulatorFactory.java:37)
         at com.bea.staxb.runtime.internal.util.collections.AccumulatorFactory.createAccumulator(AccumulatorFactory.java:74)
         at com.bea.staxb.runtime.internal.SoapArrayRuntimeBindingType.createIntermediary(SoapArrayRuntimeBindingType.java:255)
         at com.bea.staxb.runtime.internal.RuntimeBindingProperty.createIntermediary(RuntimeBindingProperty.java:117)
         at com.bea.staxb.runtime.internal.SoapUnmarshalResult.unmarshalElementProperty(SoapUnmarshalResult.java:364)
         at com.bea.staxb.runtime.internal.SoapUnmarshalResult.basicExtractAndFill(SoapUnmarshalResult.java:241)
         at com.bea.staxb.runtime.internal.SoapUnmarshalResult.extractAndFillElementProp(SoapUnmarshalResult.java:174)
         at com.bea.staxb.runtime.internal.ByNameUnmarshaller.deserializeContents(ByNameUnmarshaller.java:51)
         at com.bea.staxb.runtime.internal.AttributeUnmarshaller.unmarshalIntoIntermediary(AttributeUnmarshaller.java:47)
         at com.bea.staxb.runtime.internal.SoapUnmarshalResult.umarshalComplexElementWithId(SoapUnmarshalResult.java:395)
         at com.bea.staxb.runtime.internal.SoapUnmarshalResult.unmarshalElementProperty(SoapUnmarshalResult.java:366)
         at com.bea.staxb.runtime.internal.SoapUnmarshalResult.basicExtractAndFill(SoapUnmarshalResult.java:241)
         at com.bea.staxb.runtime.internal.SoapUnmarshalResult.extractAndFillElementProp(SoapUnmarshalResult.java:174)
         at com.bea.staxb.runtime.internal.ByNameUnmarshaller.deserializeContents(ByNameUnmarshaller.java:51)
         at com.bea.staxb.runtime.internal.AttributeUnmarshaller.unmarshal(AttributeUnmarshaller.java:38)
         at com.bea.staxb.runtime.internal.SoapUnmarshalResult.unmarshalBindingType(SoapUnmarshalResult.java:110)
         at com.bea.staxb.runtime.internal.UnmarshalResult.unmarshalType(UnmarshalResult.java:212)
         at com.bea.staxb.runtime.internal.SoapUnmarshallerImpl.unmarshalType(SoapUnmarshallerImpl.java:93)
         at weblogic.wsee.bind.runtime.internal.EncodedDeserializerContext.unmarshalType(EncodedDeserializerContext.java:66)
         at weblogic.wsee.bind.runtime.internal.BaseDeserializerContext.internalDeserializeType(BaseDeserializerContext.java:170)
         at weblogic.wsee.bind.runtime.internal.BaseDeserializerContext.deserializeType(BaseDeserializerContext.java:87)
         at weblogic.wsee.codec.soap11.SoapDecoder.decodePart(SoapDecoder.java:401)
         at weblogic.wsee.codec.soap11.SoapDecoder.decodeReturn(SoapDecoder.java:316)
         at weblogic.wsee.codec.soap11.SoapDecoder.decodeParts(SoapDecoder.java:165)
         at weblogic.wsee.codec.soap11.SoapDecoder.decode(SoapDecoder.java:116)
         at weblogic.wsee.codec.soap11.SoapCodec.decode(SoapCodec.java:136)
         at weblogic.wsee.ws.dispatch.client.CodecHandler.decodeOutput(CodecHandler.java:117)
         at weblogic.wsee.ws.dispatch.client.CodecHandler.decode(CodecHandler.java:94)
         at weblogic.wsee.ws.dispatch.client.CodecHandler.handleResponse(CodecHandler.java:71)
         at weblogic.wsee.handler.HandlerIterator.handleResponse(HandlerIterator.java:242)
         at weblogic.wsee.handler.HandlerIterator.handleResponse(HandlerIterator.java:226)
         at weblogic.wsee.ws.dispatch.client.ClientDispatcher.handleResponse(ClientDispatcher.java:161)
         at weblogic.wsee.ws.dispatch.client.ClientDispatcher.dispatch(ClientDispatcher.java:116)
         at weblogic.wsee.ws.WsStub.invoke(WsStub.java:89)
         at weblogic.wsee.jaxrpc.StubImpl._invoke(StubImpl.java:335)
         at com.test.IAccumulatorWS_Stub.getCurrentAccumulators(IAccumulatorWS_Stub.java:37)
         ... 1 more
    If I changed from
    Long recipientId = 11597997730620L;
    to
    Long recipientId = 14998712L;
    I get the error message The status is: 4.
    The group that generates the web service state that the weblogic client code is choking
    on empty arrays being returned. They say they have to return empty arrays
    instead of nulls where no data is returned.
    Is there something wrong with the weblogic tools
    or am I using it incorrectly?
    Yours,
    Frustrated.

    you'd have to check your generated code.
    If it can't handle empty arrays that would bring my trust in Bea's code down another notch (and from what I've experienced indirectly of their WS stack I wasn't all that thrilled).

  • Unmarshal - JAXB

    I am consuming a .NET webservice. I generated a Java client using Eclipse to consume the Web service.I am returned a XML tree of type MessageElement [] and I am trying to unmarshaller.unmarshal() the XML but I am having problems doing the conversion.
    The unmarshal only takes the following input types:
    File
    InputSource
    InputStream
    Node
    Source
    Help me plz. .. . How do I unmarshal this XML???

    Your client's runtime environment should take care of the unmarshalling for you so that you just end up dealing with a Java object or normal parameters.
    It sounds like you've generated the necessary helper classes from the WSDL, but does your client use these?
    There's a good article on getting the various types of Java clients up and running here if you need a hand:
    http://www-128.ibm.com/developerworks/webservices/library/ws-javaclient/

  • Local client on wl6.1

    Why does local client on wl6.1 needs serialized parameters and does
    marshaling/unmarshaling when servlet calls a stateless session bean's remote
    interface? I thought this was all optmized for local client.
    I think wl5.1 was not behaving this way. Any changes in wl6.1(sp2)?
    Thanks
    -Ravi

    Due to the classloading architecture, ear is the only way to
    have pass-by-reference invocations from the servlet. If servlets and
    ejb's are deployed separately, it is almost the same as separate JVMs.
    Gaurav Khanna <[email protected]> wrote:
    Hi,
    I have read that. Seems as the doc. is a little vague/outdated. I agree that
    ear is the way to get pass-by-reference but the "enable-call-by-ref.."
    seemed to be another way to achieve that if the servlet and ejb are in the
    same VM.
    Thanks
    <[email protected]> wrote in message news:[email protected]..
    http://e-docs.bea.com/wls/docs61/programming/packaging.html#1048725
    Gaurav Khanna <[email protected]> wrote:
    There is this:
    http://e-docs.bea.com/wls/docs61/////ejb/reference.html#1070257
    that tells me that we can get the pass-by-reference behavior even if
    the
    ejb is not packaged within the war. And by default weblogic passesarguments
    by reference in the same server. Have you set this parameter to false?Or
    maybe I am reading the documentation all wrong.
    Thanks
    Gaurav
    "Slava Imeshev" <[email protected]> wrote in message
    news:[email protected]..
    Hi Ravindra,
    To get advantage of weblogic's local calls, application and client
    should reside in one jar or ear. Apparently, ejb cannot live in war. So
    ear is the only choice.
    Regards,
    Slava Imeshev
    "Ravindra Sahasrabudhe" <[email protected]> wrote in message
    news:3caa3fa1$[email protected]..
    Why does local client on wl6.1 needs serialized parameters and does
    marshaling/unmarshaling when servlet calls a stateless session bean'sremote
    interface? I thought this was all optmized for local client.
    I think wl5.1 was not behaving this way. Any changes in wl6.1(sp2)?
    Thanks
    -Ravi
    Dimitri
    Dimitri

  • Possible to have weblogic 9 client use weblogic 8 jmx server?

    I have a client that i want to run in weblogic 9, but it needs to access mbeans remotely in weblogic 8 servers.
    At first I got the folowing error, which could be fixed by setting -Djmx.serial.form=1.0
    Caused by: java.io.InvalidClassException: javax.management.ObjectName; local class incompatible: stream classdesc serialVersionUID = -5467795090068647408, local class serialVersionUID = 1081892073854801359
    But now I have problems with other classes
    Caused by: java.rmi.UnmarshalException: failed to unmarshal class weblogic.security.acl.internal.AuthenticatedUser; nested exception is: java.io.StreamCorruptedException
    Caused by: java.rmi.UnmarshalException: failed to unmarshal interface java.util.Set; nested exception is: java.io.StreamCorruptedException
    It seems like it will not be possible. Is there any way for a jmx client running in weblogic 9 to access weblogic 8 mbeans?

    Hello. Interesting, I posted a separate post just today about the same StreamCorruptedException when calling a RemoteEJB. The EJB is hosted on WLS 8.1.5 running on JSE 1.4. The client is running on WLS 10.0 running on JSE 6.
    Did you ever get your issue resolved?
    -Gregory

Maybe you are looking for