VB Web service with arrays as variant type - access from java

Hi, I have a VB service as an activex.dll running on IIS. My first experience with VB.
The input type is variant, as VB will only handle arrays of that type. All works well with
a VB client. It takes 2 arrays in and returns an array. The WSDL file using a complex
type of
<complexType name='ArrayOfanyType'>
     <complexContent>
          <restriction base='SOAP-ENC:Array'>
               <attribute ref='SOAP-ENC:arrayType' wsdl:arrayType='anyType[]'/>
          </restriction>
     </complexContent>
</complexType>
I take this WSDL file to the client side, change the type to
<complexType name='ArrayOfinteger'>
     <complexContent>
          <restriction base='SOAP-ENC:Array'>
               <attribute ref='SOAP-ENC:arrayType' wsdl:arrayType='integer[]'/>
          </restriction>
     </complexContent>
</complexType>
and then generate the Java proxy using jdeveloper 9031. All is good and I call the service
and get a response, which in turn gives me a result. the result.getvalue fails with a caste
exception, [LObject[] to Integer[]. The return value is there, but it's type is Object, which I can
see by inspecting response in the debugger. I am getting
pretty sure it is not a Java Object, but a dom or sax Object. The DOM DocumentBuilder
works for String to get the values, but not for this Object type. Does anyone know how to
parse out an Object Type with DOM or SAX?

A java type "Object" is parent class of all java instances - to parse it with DOM or SAX requires you to cast it to the required object type by that parser api - eg "Document" - check out the DOM and SAX api docuemntation.

Similar Messages

  • Invoking Web Service with array paramter

    Hi,
    I'm trying to invoke a Java web service having an array as input parameter but it only works if i have only one child or if i chose one specific element with xpath.
    bpel variables:
    <variables>
    <variable name="mergedSupps" element="client:suppliers"/>
    <variable name="Invoke_1_getRating_InputVariable" messageType="ns1:getRating"/>
    <variable name="Invoke_1_getRating_OutputVariable" messageType="ns1:getRatingResponse"/>
    </variables>
    this works:
    <assign name="Assign_1">
    <copy>
    <from variable="mergedSupps" query="/client:suppliers/client:suppID[1]"/>
    <to variable="Invoke_1_getRating_InputVariable" part="parameters" query="/ns1:getRating/suppID"/>
    </copy>
    </assign>
    does not work:
    <assign name="Assign_1">
    <copy>
    <from variable="mergedSupps" query="/client:suppliers/client:suppID"/>
    <to variable="Invoke_1_getRating_InputVariable" part="parameters" query="/ns1:getRating/suppID"/>
    </copy>
    </assign>
    wsdl:
    <element name="suppliers" type="client:supplierType"/>
    <element name="procRatingTestProcessRequest" type="client:requestType"/>
                   <element name="procRatingTestProcessResponse" type="client:responseType"/>
         <complexType name="requestType">
    <sequence>
                                  <element name="suppliers" type="client:supplierType"/>
                             </sequence>
                        </complexType>
                   <complexType name="supplierType">
         <sequence>
                                  <element name="suppID" type="string" maxOccurs="unbounded"/>
                             </sequence>
                        </complexType>
                        <complexType name="responseType">
                             <sequence>
                                  <element name="rating" type="double"/>
                             </sequence>
                        </complexType>
    java:
    @WebMethod
    public double getRating(@WebParam(name= "suppID") String[] s) {
    anyone can help?????

    Sorry i was trying around too much, it was empty some other time ;)
    when i try:
    <assign name="Assign_1">
    <copy>
    <from variable="mergedSupps" query="/client:suppliers/client:suppID"/>
    <to variable="Invoke_1_getRating_InputVariable" part="parameters" query="/ns1:getRating/suppID"/>
    </copy>
    </assign>
    i get:
    <selectionFailure>
    <part name="summary" >
    <summary>
    XPath query string returns multiple nodes. According to BPEL4WS spec 1.1 section 14.3, The assign activity part and query /client:suppliers/client:suppID should not return multipe nodes. Please check the BPEL source at line number "70" and verify the part and xpath query /client:suppliers/client:suppID.</summary>
    </part>
    </selectionFailure>

  • Fail to create web service with user-defined data type using jwsc Ant task!

    Hello every body!
    I used JAXWS to create WSDL from a jws file.
    This is my jws:
    package ws;
    import javax.jws.WebService;
    import javax.jws.WebMethod;
    import ws.MyDataType;
    *@WebService*
    *public class MyWebService {*
    public MyWebService()
    *@WebMethod*
    public MyDataType MyWebMethod(MyDataType mdt)
    *// mdt.setS("I got it!");*
    return mdt;
    and this is my data type:
    package ws;
    *public class MyDataType {*
    String s;
    public MyDataType()
    *public String getS() {*
    return s;
    *public void setS(String s) {*
    this.s = s;
    and this is my Ant build.xml
    *<project default="all">*
    *<property name="weblogic.jar.classpath" value="D:/Projects/bea103/wlserver_10.3/server/lib"/>*
    *<taskdef name="jwsc" classname="weblogic.wsee.tools.anttasks.JwscTask">*
    *<classpath>*
    *<path id="weblogic.classpath">*
    *<pathelement path="WEBLOGIC_HOME"/>*
    *<fileset dir="${weblogic.jar.classpath}">*
    *<include name="weblogic.jar"/>*
    *</fileset>*
    *</path>*
    *</classpath>*
    *</taskdef>*
    *<target name="all" depends="clean,build-service"/>*
    *<target name="clean">*
    *<delete dir="output"/>*
    *</target>*
    *<target name="build-service">*
    *<!--add jwsc and related tasks here -->*
    *<jwsc srcdir="" destdir="wsoutput">*
    *<jws file="MyWebService.java" type="JAXWS"/>*
    *</jwsc>*
    *</target>*
    *<!--<target name="deploy"> --><!--add wldeploy task here --><!-- </target>-->*
    *</project>*
    I run the Ant task but I get this error:
    Buildfile: build.xml
    clean:
    build-service:
    [jwsc] JWS: processing module /MyWebService
    [jwsc] Parsing source files
    [jwsc] Parsing source files
    [jwsc] 1 JWS files being processed for module /MyWebService
    *[jwsc] [JAM] Warning: failed to resolve class MyDataType*
    [jwsc] JWS: C:\Documents and Settings\samimi\IdeaProjects\SampleWebService\src\ws\MyWebService.java Validated.
    [jwsc] Processing 1 JAX-WS web services...
    *[jwsc] error: Could not get TypeDeclaration for: MyDataType in apt round: 1*..........
    BUILD FAILED
    C:\Documents and Settings\samimi\IdeaProjects\SampleWebService\src\ws\build.xml:
    19: weblogic.wsee.tools.WsBuildException: Error processing JAX-WS web services
    Please help me to solve this issue.
    Thank you,
    Mojir

    Thank u very much Jay SenSharma this was helpful
    and thank u sandeep_singh this is the answer,
    I find another answer too :
    adding my class files to the path remove the error:
    <project default="all">
    <property name="weblogic.jar.classpath" value="D:/Projects/bea103/wlserver_10.3/server/lib"/>
    <taskdef name="jwsc" classname="weblogic.wsee.tools.anttasks.JwscTask">
    <classpath>
    <path id="my.path">
    <pathelement path="D:/Projects/bea103/jdk160_05/lib/tools.jar"/>
    <pathelement path="D:/Projects/bea103/wlserver_10.3/server/lib/weblogic.jar"/>
    *<pathelement path="D:/Projects/LifeInsurance Project Original/BusinessModule/classes/"/>* adding this line solved my problem.
    <pathelement path="${java.class.path}"/>
    </path>
    <path id="weblogic.classpath">
    <pathelement path="WEBLOGIC_HOME"/>
    <fileset dir="${weblogic.jar.classpath}">
    <include name="weblogic.jar"/>
    </fileset>
    </path>
    </classpath>
    </taskdef>
    <target name="all" depends="clean,build-service"/>
    <target name="clean">
    <delete dir="output"/>
    </target>
    <target name="build-service">
    <jwsc sourcepath="mytype" classpathref="my.path" debug="true" srcdir="" destdir="wsoutput">
    <jws file="NegotiationService.java" generatewsdl="true" type="JAXWS"/>
    </jwsc>
    </target>
    </project>
    Thank u very much,
    Mojir

  • PL SQL Web Service with XML output - Remove the declaration from the proces

    Using JDeveloper to create PL/SQL web services it inserts the generic declaration
    <?xml version="1.0" encoding="UTF-8" ?>. I want to remove this line from the payload.
    Here is the entire payload. Why is this inserted and how do I get rid of it.
    <?xml version="1.0" encoding="UTF-8" ?>
    - <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    - <SOAP-ENV:Body>
    - <SOAP-ENV:Fault>
    <faultcode>SOAP-ENV:Server.Exception:</faultcode>
    <faultstring>java.sql.SQLException: java.sql.SQLException: ORA-04068: existing state of packages has been discarded ORA-04063: package body "FDC_API.PVR_IPS_TICKET" has errors ORA-06508: PL/SQL: could not find program unit being called ORA-06512: at line 1</faultstring>
    <faultactor>/pvr_ora-pvr_tickets-context-root/Pvr2ips</faultactor>
    </SOAP-ENV:Fault>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>rvice, my payload has the

    We can generate jaxws from 11.1.2.0 onwards using This is now provided by the TopLink web service provider builder, which can be via the TopLink DBWS provider wizard from JDeveloper since the 11.1.2.0.0 release
    1.4.4 Database Web Services (DBWS)
    http://docs.oracle.com/cd/E23943_01/doc.1111/e26045/general.htm#CHDIEEHG
    Hope that heps
    Regards,
    Sunil P

  • Calling web service with basic authentication from EP "unauthorized"

    Hello,
    I need to call a .NET web service with basic authentication on the IIS from my portal application (no http proxy between portal and IIS). But always I get the following exception:
    <b>com.sap.engine. services.webservices.jaxm.soap.accessor. NestedSOAPException:
    Problem in server response: [Unauthorized].</b>
    I'm using the following code for calling the .NET web service:
    <b>...</b><i>Licence_GetList lParameter = new Licence_GetList();
    lParameter.setStatus(CEnvironment.TransformStatus_WebService(search));
    ILicenceManager lLicMan = (ILicenceManager) PortalRuntime.getRuntimeResources().getService("LicenceManager");
    ILicenceManager lLicManSecure = lLicMan.getSecurisedServiceConnection(request.getUser());
    Licence_GetListResponse lGetListResponse = lLicManSecure.Licence_GetList(lParameter);</i><b>...</b>
    I've also configured a http system in the portal system landscape using the following parameters:
    <i>Authentication Method : Basic Authentication
    Authentication Type : Server
    User Mapping Type : admin,user</i>
    The user mapping is also personalized for this system!
    What's wrong? Please help! This is really urgent!
    Kind Regards
    Joerg Loechner

    Hello Renjith,
    here is a small cutout of my "portapp.xml";
    <services>
      <service alias="LicenceManager" name="LicenceManager">
        <service-config>
          <property name="className" value="de.camelotidpro.
                 pct.xi.scm.webservice.LicenceManager"/>
          <property name="startup" value="false"/>
          <property name="WebEnable" value="false"/>
          <property name="WebProxy" value="true"/>
          <property name="SecurityZone" value="de.camelotidpro.
                 pct.xi.scm.webservice.LicenceManager/
                   DefaultSecurity"/>
        </service-config>
        <service-profile>
          <property name="SystemAlias" value="LicMan_NET"/
        </service-profile>
      </service>
    </services>
    I'm using a http system created in the system landscape (alias LicMan_NET). But it seems that this system is not used by the web service call (No error, even if I delete this system!). The code used to call this web service can be found at the top of this threat...
    Regards
    Joerg Loechner

  • Web service with complex java type

    Hi,
    I create a web service method with String o with Array of Strings without problem. Now I nedd to create a ws that return a table, so I create a class like this:
    public class User {
         private String Name;
         private String.Surname;
         public void setName(String setName){
              Name= setName;
         public void setSurname(String setSurname){
              Surname=setSurname;
    In my ws class I use this object:
    public User[] getUser(String a){
              User[] user = new User[10];
              for (int i=0;i<10;i++){
                   User<i>.setName("aaa");
                   User<i>.setSurname("bbb");
              return user;
    When in WebService Perspective I try to create my ws in wizard mode I see method getUser but I can't check it
    Where is error?
    Thanks
    Andrea

    HI Andrea,
        I think with present netweaver developer studio , we can create Web services with end points as simple data types in java and the array of that simple data types.
        not sure whether it support our own custom developed classes as end points.
         just go through these links.
    http://help.sap.com/saphelp_nw2004s/helpdata/en/f7/af60f2e04d0848888675a800623a81/frameset.htm
    http://help.sap.com/saphelp_nw2004s/helpdata/en/f7/af60f2e04d0848888675a800623a81/frameset.htm
    from this we will get Restrictions for WS Endpoints.
                             Regards
                              Kishor Gopinathan

  • Problem implementing web services with types generated by jdeveloper 10.1.3

    Hello,
    I have generated a web service using JDeveloper 10.1.3.3. from a WSDL. This WSDL includes a schema with some types defined. There is a element with the following definition:
    <xs:element name="OptionalInputs" type="AnyType"/>
    where:
    <xs:complexType name="AnyType">
    <xs:sequence>
    <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    </xs:complexType>
    The meaning of the element OptionalInputs is that it can include other elements, of any type, definied within the same schema.
    After generating the web service from the WSDL, I get the following:
    - A Class named 'AnyType' that consists of one element of type
    protected javax.xml.soap.SOAPElement[] _any;
    - Some classes which must be included in an object of type 'AnyType', and that implements java.io.Serializable.
    However, I do not know how to include successfully one of this (serializable) classes into an object of type 'AnyType' (SOAPElement[]).
    Could you be so kind as to help me, please?
    Thank you very much in advance.

    Hi there,
    10.1.3 is not production ready yet, and you will find this warning on the oracle page http://www.oracle.com/technology/tech/java/oc4j/1013/index.html
    "Under no circumstances should it be used in production environments."
    Does this mean that it's not possible to deploy a Doc/Lit webservice to production using JDeveloper? Is there any other way of getting it to work with 10.1.2?
    Thanks,
    Vid.

  • Create Web Services and return a complex type with ADF

    Hello,
    I've tried tried using ADF BC and service interface to create a Web service, this works well, but I needed to return more complex data types, such as a list of person objects (name, last name, ...), as I reviewed in the ADF BC service interface can return only some types of data :(
    Anyone know how I could do this using ADF BC, or how else do you recommend
    thanks

    How I can access to the AppModule from java class in the Model Project
    I've tried use
    String amDef = "model.services.WsAM";
    String config = "WsAMLocal";
    ApplicationModule am = Configuration.createRootApplicationModule(amDef, config);
    WsAMImpl myAm = (WsAMImpl)am;
    but in the Web Service, this throw a exception
    <ns2:exception class="java.lang.NoClassDefFoundError" note="To disable this feature, set com.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace system property to false" xmlns:ns2="http://jax-ws.dev.java.net/">
    <message>oracle/jbo/client/Configuration</message>
    please I hope your help
    Thanks.
    Edited by: rmespas80 on 08-jul-2011 16:26

  • Build web service with value types

    Hi,
    I am trying to build a web service that uses a value type as a parameter.
    I am using wscompile and wsdeploy to build the service.
    But I don't know how to include the value type in my service.
    This is what I do:
    First I compile all the java files and put them in my build directory (incuding the value type class)
    Then I use wscompile -define -d build -nd build -classpath build config-interface.xml -model build/model.gz
    Then I create the war file that contains the class files, model.gz, web.xml and jaxrpc-ri.xml.
    Then I run wsdeploy -o dist/generic-serv.war dist/generic-service.war
    How do I get my value type class included in the wsdl file? and does it need to be in the model.gz file aswell?

    Sorry I was a bit wrong describing my problem.
    I am trying to use an ArrayList containing value types as a parameter.

  • RPC/SOAP-Encoded Web Service with Workshop

    Is there anyway to create a RPC/SOAP-Encoded Web Service with Workshop ? There is an "encoding" attribute in the autotype ant task but no corresponding properties in Workshop.

    Hi,
    Thanks for the reference.
    I have checked both in the wsdl and the Soap message,
    rpc property effectively means rpc/encoded. Now that
    would say that RPC/Literal is not supported ?
    Here are what the messages looks like with rpc and
    document properties
    Thanks all for making this clear.
    document wlw property = Document/Literal
    <SOAP-ENV:Envelope xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <SOAP-ENV:Body SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <ns:getEmployeeResponse xmlns:ns="http://www.openuri.org/">
    <ns:getEmployeeResult xmlns:ns="http://www.openuri.org/">
    <ns:Address xmlns:ns="http://www.openuri.org/">
    <ns:City xmlns:ns="http://www.openuri.org/">Luxembourg</ns:City>
    <ns:Country xmlns:ns="http://www.openuri.org/">LU</ns:Country>
    <ns:Number xmlns:ns="http://www.openuri.org/">2</ns:Number>
    <ns:PostCode xmlns:ns="http://www.openuri.org/">1000</ns:PostCode>
    <ns:Street xmlns:ns="http://www.openuri.org/">Bld. Royal</ns:Street>
    </ns:Address>
    <ns:Age xmlns:ns="http://www.openuri.org/">20</ns:Age>
    <ns:Name xmlns:ns="http://www.openuri.org/">Dupont</ns:Name>
    <ns:FirstNames xmlns:ns="http://www.openuri.org/">
    <ns:String xmlns:ns="http://www.openuri.org/">Jean</ns:String>
    <ns:String xmlns:ns="http://www.openuri.org/">Jacques</ns:String>
    </ns:FirstNames>
    </ns:getEmployeeResult>
    </ns:getEmployeeResponse>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    rpc wlw property = RPC/Soap-Encoded
    <SOAP-ENV:Envelope xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <SOAP-ENV:Body SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <ns:getEmployeeResponse xmlns:ns="http://www.openuri.org/">
    <getEmployeeResult xmlns:s="http://www.openuri.org/encodedTypes" xsi:type="s:Employee">
    <Address xsi:type="s:Address">
    <City xsi:type="xsd:string">Luxembourg</City>
    <Country xsi:type="xsd:string">LU</Country>
    <Number xsi:type="xsd:int">2</Number>
    <PostCode xsi:type="xsd:string">1000</PostCode>
    <Street xsi:type="xsd:string">Bld. Royal</Street>
    </Address>
    <Age xsi:type="xsd:int">20</Age>
    <Name xsi:type="xsd:string">Dupont</Name>
    <FirstNames SOAP-ENC:arrayType="xsd:string[2]" xsi:type="SOAP-ENC:Array">
    <String xsi:type="xsd:string">Jean</String>
    <String xsi:type="xsd:string">Jacques</String>
    </FirstNames>
    </getEmployeeResult>
    </ns:getEmployeeResponse>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    Message was edited by phcollignon at Aug 27, 2004 2:54 AM

  • Web Service with Complex Results and Flex

    I have created a Enterprise Java Bean that has one "test" method that returns a String[]. I have compiled, deployed and registered this bean in Sun's Application Server 8.1. I am using NetBeans 5.0 to develop this project.
    I try to load this web service into Flex and I get a fault thrown: TypeError: Error #1034: Type Coercion failed: cannot convert []@29e5d06 to XMLList. I have set the returnType in Flex as "e4X.". Do I need to do this in my webservice.
    Any help would be appreciated.

    HI Andrea,
        I think with present netweaver developer studio , we can create Web services with end points as simple data types in java and the array of that simple data types.
        not sure whether it support our own custom developed classes as end points.
         just go through these links.
    http://help.sap.com/saphelp_nw2004s/helpdata/en/f7/af60f2e04d0848888675a800623a81/frameset.htm
    http://help.sap.com/saphelp_nw2004s/helpdata/en/f7/af60f2e04d0848888675a800623a81/frameset.htm
    from this we will get Restrictions for WS Endpoints.
                             Regards
                              Kishor Gopinathan

  • Accessing external web service with non-constant URL

    Hello, all
    I am looking in the documentation on accessing external web services, but either I am looking in the wrong place, or the documentatoin is lacking info.
    My clients have several web services in the local network (regular services, not DB-based), the have the same interface, but different URL's.
    Versions of the DB are 11, 12, and 16.
    First of all, I do not see in the specs an option for a non-hardcoded URL. The logic says that this has to be possible, but I cannot find it.
    Second, I need to see an example of accessing an XML or JSon based service, I cannot find it in the specs either.
    Can anyone point me to a document with examples?
    Thank you
    Arcady

    The following will call a web service with whatever URL you pass in as the argument "myurl".  I think that is what you are looking for.
    CREATE PROCEDURE cli_test2( myurl LONG VARCHAR )
    RESULT( httpheaders long varchar, httpvalues long varchars
    URL '!myurl'
    To deal with the resulting data in XML, use the OPENXML() function.
    eg. To turn an XML list of employees that looks like this:
    <root>
    <row EmployeeID="102" Surname="Whitney" GivenName="Fran" StartDate="1984-08-28"/>
    </root>
    into a table of results, you would do this (where xmlgetemplist() is the web service call):
    CREATE OR REPLACE PROCEDURE xmlgetemplist() RESULT( httpheader long varchar, httpbody long varchar)
    URL 'http://localhost/demo/xmlEmployeeList'
    TYPE 'HTTP:GET';
    create variable res long varchar;
    -- call the web service
    select httpbody into res from xmlgetemplist() where httpheader = 'Body'
    -- extract the XML elements into a SQL result set
    select * from openXML( res, '/root/row' ) WITH ( EmployeeID INT '@EmployeeID',
           GivenName    CHAR(20) '@GivenName',
           Surname      CHAR(20) '@Surname',
           PhoneNumber  CHAR(10) '@Phone');
    To deal with the resulting data in JSON, use the sp_parse_json() procedure.
    eg.
    To turn a JSON formatted list of employees that looks like this:
    "EmployeeID": 102,
    "Surname": "Whitney",
    "GivenName": "Fran",
    "StartDate": "1984-08-28",
    "TerminationDate": null
    into a table of results, you would do this (where jsongetemplist() is the web service call):
    CREATE OR REPLACE PROCEDURE jsongetemplist() RESULT( httpheader long varchar, httpbody long varchar)
    URL 'http://localhost/demo/jsonEmployeeList'
    TYPE 'HTTP:GET';
    create variable foo long varchar;
    --call the webservice
    select httpbody into foo from jsongetemplist() where httpheader = 'Body';
    --turn the json result into a structured array of data
    -- this step is required because of less structured nature of JSON
    call sp_parse_json( 'output_array', foo);
    --extract the JSON elements from the output array into a SQL result set
    SELECT  output_array[[row_num]].EmployeeID as EmployeeID,
                   output_array[[row_num]].SurName as SurName,
                   output_array[[row_num]].GivenName as GivenName,
                   output_array[[row_num]].StartDate as StartDate,
                   output_array[[row_num]].TerminationDate as EndDate
    FROM sa_rowgenerator(1, CARDINALITY(output_array))
    Hope this helps,
    --Jason

  • Invoke web service with DTO

    Hey guys,
    I am quite new in using BPEL. My first test worked fine, but know I have an issue, which I can not solve. Invoking web services with a basic return value is no problem. I could also you a dto object including some basic variables in order to invoke the web service without having problems.
    But when I have a dto object as return value, I get the following exception.
    Could someone give me a hint to fix my problem...that would be great!
    Thanks alot!
    Sven
    <messages>
    - <input>
    - <carReserveRequest>
    - <part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="in0">
    - <in0 xmlns="" xmlns:def="urn:TravelBooking" xsi:type="def:CarReservationDTO" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <carType>
    Mini
    </carType>
    <customerName>
    9
    </customerName>
    <customerPhone>
    9
    </customerPhone>
    <reservationEnd>
    2030-12-12T00:00:00.000+01:00
    </reservationEnd>
    <reservationStart>
    2029-12-12T00:00:00.000+01:00
    </reservationStart>
    </in0>
    </part>
    </carReserveRequest>
    </input>
    - <fault>
    - <remoteFault xmlns="http://schemas.oracle.com/bpel/extension">
    - <part name="summary">
    <summary>
    exception on JaxRpc invoke: trailing block elements must have an id attribute
    </summary>
    </part>
    </remoteFault>
    </fault>
    </messages
    Message was edited by:
    user606281

    Here is more information. Below are the relevant sections of the web service's WSDL which I am trying to call from BPEL:
    - <wsdl:message name="getNextIDResponse">
    <wsdl:part name="part1" element="ns0:getNextIDResponse" />
    </wsdl:message>
    - <wsdl:message name="getNextIDFault">
    <wsdl:part name="part1" element="ns0:SOAPExceptionFault" />
    </wsdl:message>
    <wsdl:message name="getNextIDMessage" />
    - <wsdl:portType name="GetUniqueIDPortType">
    - <wsdl:operation name="getNextID">
    <wsdl:input message="axis2:getNextIDMessage" wsaw:Action="urn:getNextID" />
    <wsdl:output message="axis2:getNextIDResponse" />
    <wsdl:fault name="getNextIDFault" message="axis2:getNextIDFault" />
    </wsdl:operation>
    </wsdl:portType>

  • Calling Reporting Services Web Service with jQuery possible?

    Hi,
    is it possible to call the Reporting Services Web Service with jQuery? If yes, can someone post me a small example?
    Background:
    My plan is to create a html with a form which is also uploaded then into the reportserver. I open this html later by clicking a link in a report (with gotoURL open.window). The report opens the html inclusive the overtaken of some additional parameters
    (reportname, reportdescription). These parameters I will use in the html-form as defaultvalues for the corresponding input-text-fields. Now the user can make some changes (i.e. the decription). With a click on a button I will send the new description to
    the Reporting Services Web Service by using the SetProperties method, closing the html-window and reload the report. Important is that I want to upload the html also into the reportserver itself.
    I have already found how to consume a web service via jQuery but with the Reporting Services Web Service I did not get it running in my tests.
    I have referenced to the following jQuery.js: http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js
    Here you can see my tests I made with the results:
    $.ajax({
    type: 'POST',
    url: 'http://<..>/ReportServer/ReportService2010.asmx/ListChildren',
    data: {'ItemPath':'/','Recursive':false},
    complete: function(xData, status) {
    $('p').html($(xData.responseXML).text()); // result
    $("#divStatus").text( status ); // status }
    I got a NULL response with Status success. But where are the items?
    Another test which should response only one value was that:
    $.ajax({
    type: "POST",
    contentType: "text/xml; charset=utf-8",
    url: "http://<..>/ReportServer/ReportService2010.asmx/GetItemType",
    data: {"Item":"/Development"}, // Development is a Folder in my Reportserver-Root
    dataType: "xml",
    success: function (msg) {
    $("#divResult").html(msg.responseXML);
    error: function (data, status, error) {
    $("#divResult").html("WebSerivce unreachable<br> <br>" + data.responseXML + "<br> <br>(" + error + ")");
    Here I got an [object Error]
    And here my last test:
    var soapMessage = '<?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">\
    <soap:Body>\
    <GetItemType xmlns="http://www.microsoft.com/sql/ReportingServer">\
    <ItemPath>/Development</ItemPath>\
    </GetItemType>\
    </soap:Body>\
    </soap:Envelope>';
    $.ajax({
    type: "POST",
    contentType: "text/xml; charset=utf-8",
    url: http://<..>/ReportServer/ReportService2010.asmx?wsdl,
    data: soapMessage,
    dataType: "xml",
    success: processSuccess,
    error: processError
    function processSuccess(data, status, req) {
    if (status == "success")
    $("#response").text($(req.responseXML).find("Type").text());
    function processError(data, status, req) {
    alert(req.responseText + " " + status);
    Here I got an "Undefined error"
    Can anyone help me?
    Thanks
    René Illner

    Hi Rene,
    I have one vbscript class to call web services. May be if you need you can use it.
         dim ws
         set ws = new webservice
         ws.url = "http://servername/ReportServer/ReportService2010.asmx"
         ws.method = "MethodName"
         ws.parameters.Add "Parameter1", "Param1 Desc.."
         ws.parameters.Add "Parameter2","[email protected].."
         ws.execute
         set ws = nothing
    '------web service calling class
    class WebService
      public Url
      public Method
      public Response
      public Parameters
      public function execute()
        dim xmlhttp
        Set xmlhttp = CreateObject("Microsoft.XMLHTTP")
        xmlhttp.open "POST", Url & "/" & Method, false
        xmlhttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
        xmlhttp.send Parameters.toString
        response = xmlhttp.responseText
        set xmlhttp = nothing
      end function
      Private Sub Class_Initialize()
        Set Parameters = new wsParameters
      End Sub
      Private Sub Class_Terminate()
        Set Parameters = Nothing
      End Sub
    End class
    class wsParameters
      public mCol
      public function toString()
        dim nItem
        dim buffer
        buffer = ""
        for nItem = 1 to Count
          buffer = buffer & Item(nItem).toString & "&"
        next
        if right(buffer,1)="&" then
          buffer = left(buffer,len(buffer)-1)
        end if
        toString = buffer
      end function
      public sub Clear
        set mcol = nothing
        Set mCol = CreateObject("Scripting.Dictionary")
      end sub
      public sub Add(pKey,pValue)
        dim newParameter
        set newParameter = new wsParameter
        newParameter.Key = pKey
        newParameter.Value = pValue
        mCol.Add mCol.count+1, newParameter
        set newParameter = nothing
      end sub
      public function Item(nKey)
        set Item=mCol.Item(nKey)
      end function
      public function ExistsXKey(pKey)
        dim nItem
        for nItem = 1 to mcol.count
          if mCol.Item(nItem).key = pKey then
            ExistsXKeyword = true
            exit for
          end if
        next
      end function
      public sub Remove(nKey)
        mCol.Remove(nKey)
      end sub
      public function Count()
        Count=mCol.count
      end function
      Private Sub Class_Initialize()
        Set mCol = CreateObject("Scripting.Dictionary")
      End Sub
      Private Sub Class_Terminate()
        Set mCol = Nothing
      End Sub
    end class
    class wsParameter
       public Key
       public Value
       public function toString()
         toString = Key & "=" & Value
       end function
    end class
    Regards, RSingh

  • Web services with JAXB

    Hi All,
    I am new to Web services with JAXB in ECLIPS.
    When I tried to unmarshal the XML file, I am getting the following exception.
    javax.xml.bind.UnmarshalException: unexpected element (uri:"", local:"order"). Expected elements are <{http://webservices/}read>,<{http://webservices/}readResponse>
         at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallingContext.handleEvent
    xml , schema and java class are in follow.
    Please help me to solve this issue.
    Mohseni Rad.
    ----------------------------------po.xsd-----------------------------------------
    <?xml version="1.0" encoding="UTF-8"?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <xsd:element name="order" type="OrderType"/>
    <xsd:complexType name="OrderType">
    <xsd:sequence>
    <xsd:element name="shipTo" type="xsd:string"/>
    <xsd:element name="billTo" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:schema>
    ------------------------------------po.xml----------------------------------------
    <?xml version="1.0" encoding="UTF-8"?>
    <order>
    <shipTo>shipto</shipTo>
    <billTo>billto</billTo>
    </order>
    ------------------TestWS.java---------------------
    import java.io.FileInputStream;
    import java.io.IOException;
    import javax.xml.bind.JAXBContext;
    import javax.xml.bind.JAXBElement;
    import javax.xml.bind.JAXBException;
    import javax.xml.bind.Unmarshaller;
    import wsclient.*;
    public class TestWs {
         public static void main(String[] args) {
              try{
                   SecondWebServices webService = new SecondWebServicesService
    .getSecondWebServicesPort();
                   JAXBContext jctx = JAXBContext.newInstance("wsclient");
                   Unmarshaller unmarshaller = jctx.createUnmarshaller();
                   FileInputStream fl = new FileInputStream( "etc//po.xml" );
         JAXBElement<?> order = (JAXBElement<?>)unmarshaller.unmarshal( fl );
                   OrderType orderType = (OrderType)order.getValue();
                   webService.read( orderType);
              }catch (JAXBException je) {
                   je.printStackTrace();
              catch (IOException ioe) {
                   ioe.printStackTrace();
    }

    Hi,
    When you are using JAX-WS, there is a tool wsimport, with which you are going to generate the artifacts required to implement the web service.
    When you pass the WSDL as a parameter to the wsimport tool, it will be create the required beans also(JAXB Objects).
    So need of any other external implementation of JAXB when you are working with JAXWS
    Thanks,

Maybe you are looking for