Complex Type for AQ Adapter

Dear Friends!!!
I would like to create anAQ for my custom objects. As we are aware that the steps are to
1. Set up user grants
2. Create the Object
3. Create Queue Tables (both in_queue and out_queue)
4. Start the queues.
The process is straight forward, when the object to be created is simple object for example, a student. so the object could be created using -
create type STUDENT_TYPE as OBJECT (
ROLL_NUM VARCHAR2(10),
NAME VARCHAR2(20),
AGE number
But in my case I have a complex object, for example -
Vendor -
ID
Name
Equipments (occurs multiple times)
Feedback (occurs Multiple Times)
Equipment -
ID
Description
Rate
Feedback
ID
Description
Here I am fix, as to how should I create the objects.. if any of you could provide me some pointers, it shall be a great help.
Regards,
SwapSawe.

Hi,
You can create complex object types like below:
create type Equipment_type is OBJECT
id NUMBER,
description VARCHAR(100),
rate NUMBER(10,2)
create type Equipment_Arr is VARRAY(50) of Equipment_type;
create type Feedback_type is OBJECT
id NUMBER,
description VARCHAR(100)
create type Feedback_Arr is VARRAY(50) of Feedback_type;
create type vendor is OBJECT
id NUMBER,
name VARCHAR(100),
Equipments Equipment_Arr,
feedback Feedback_Arr
Size of varray will depend on no of occurrence of equipments and feedback.
Regards,
Sachin

Similar Messages

  • How to create a reference instead of complex type for record in data structure type in BizTalk schema

    I have created the record in BizTalk schema but i will give to Data Structure Type as reference For eg:Recordname(Reference) instead of recordname(Complex type).
    Please help me to sort this out
     

    You can add a reference to an existing type only.
    You might have to manually edit the XSD file to change the xmlns definiton to xmlns:tns and then after you define the record type, set the datatype to tns:.... this creates the XML Type. Then later in your schema you can instantiate this with a name and
    then set type to tns:.... (Reference)
    Regards.

  • Data type for mail adapter

    HI
    what type of data will come to mail ??
    or
    which type of data type we should you for Mail adapter ??
    Regards
    Kumar

    Below link would address your doubts on mail adapters.
    Mail Adapter

  • Data Type for File adapter

    hi all,
    we have a scenario which is idoc-xi-file
    the output data type should be something like this:
    [Data.1]
    Promo,1000,,,,,,,
    PromoD,2000,,yup
    Item,1,IGRP,,,,,,FTY,3
    Tier,1,,,,,,,ITEM,,
    Itemy,1,IGRP,,,,,,FTY,1,A_,100,,ELST
    we have to use file content conversion parameters for this as well as this needs to be converted to a CSV file format(third party system).
    any help in declaring this kind of data type(structure) and handling file content conversion parameters would be highly appreciated.
    for data type if any anybody can help me build the structure or give an example!!!
    would be gr8!!!
    thanks in advance
    ahmed

    Hi Parvez,
    For file content conversion, you can refer the below link:-
    http://help.sap.com/saphelp_nw04/helpdata/en/d2/bab440c97f3716e10000000a155106/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/d2/bab440c97f3716e10000000a155106/frameset.htm
    I hope this helps.
    Regards.
    Praveen

  • Complex datatypes for webservices

    Hello all,
    Question from customer:
    "...Its not possible to user webservices in htmldb, that user complex types for paramater or return.
    Creation htmldb webservice formulars work only with literal soap data types. But soap xsd support complex types or arrays. Thus, we can not use htmldb for accessing such services. .."
    If customer uses complex datatypes it appears a ora-20001.
    Is there a way to use complex datatypes for webservices in htmldb or will it be included in a new release or patch?
    thanks
    Hendrik

    Hi,
    Did you solve this one?
    I'm having the exact same problem, trying to communicate with Oracle Wireless webservices from htmldb,
    which kind of made me dissapointed because they are both Oracle products! Basically what wireless wants is an array input and htmldb complains about this!
    Any solutions?
    Magnus

  • Getting invalid content type for SOAP: TEXT/HTML exception for Soap Adapter

    I am trying to invoke Webservice using SOAP Receiver Adapter
    but I am getting error
    <SAP:AdditionalText>com.sap.aii.af.ra.ms.api.DeliveryException: invalid content type for SOAP: TEXT/HTML</SAP:AdditionalText>
    Pls let me know
    Regards

    HI,
    see
    •     Q: What character encoding is supported by the SOAP sender adapter?
               A: The SOAP sender adapter can accept any character encoding supported by the local JDK. When you are using a particular character encoding with content type text/xml, you must make sure that the encoding name given in the content type and in the XML declaration must be consistent. What makes this more complex is that the default values. The default encoding for "text/xml" is US-ASCII, whereas the default encoding for the XML declaration is UTF-8 or UTF-16. The following examples show several valid combinations of content-type and XML declartion:
               text/xml
               <?xml version='1.0' encoding='us-ascii'?>
               text/xml; charset='utf-8'
               <?xml version='1.0' encoding='utf-8'?>
               text/xml; charset='utf-8'
               no declaration
               text/xml; charset='iso-8859-1'
               <?xml version='1.0' encoding='iso-8859-1'?>
               application/xml
               <?xml version='1.0' encoding='iso-8859-1'?>
               The response message from the SOAP sender is normally encoded in UTF-8. If you want to change this encoding, for instance to iso-8859-1, you can supply the encoding information with the xmlenc variable in the request URL as in:
               http://host:port /XISOAPAdapter/MessageServlet?channel=p:s:c&xmlenc=iso-8859-1
               Related Questions "What character encoding is supported by the SOAP receiver adapter?"
    Regards
    Chilla

  • SOAP adapter Using XI 3.0 error: invalid content type for SOAP: TEXT/HTML

    Hi All,
      I have the scenario to send a message to proxy via SOAP adapter . My PI server is 7.3 and my BI application server also 7.3. I have created service interface in the ESR and created the ABAP proxy in the Application server. Im using the receiver SOAP adapter with message protocol as XI 3.0. Am running this scenario in the central adapter engine. (That is i didnt create integrated configuration). I am facing the issue in the receiver SOAP channel as 'invalid content type for SOAP: TEXT/HTML: 401 Unauthorized'. But i can able to login into the URL which is given in the channel using the username and password used in the channel.
    Can you please let me know if any addtional settings need to be done in PI side.
    Regards,
    Ramalakshmi.G

    Hi,
      Thanks for your reply. I have done my scenario with the integration configuration. Still i am facing the same issue " SOAP: TEXT/HTML; HTTP 401 Unauthorized". I have given the correct URL, username and password. Is this enough to connect to the receiver integration server from AE. Any settings need to be do in the receiver ABAP system and PI system. If so please share the corressponding note for the same.  What should be the role is assigned to the userid given in the channel.
    I have used sproxy to create the proxy in the receiver ABAP system. In PI i am using the SOAP adapter with XI 3.0 ,message protocol to call to this proxy. I have not done any settings in any of the servers. Do i need to do any settings.
    Regards,
    Ramalakshmi.G

  • IOException: invalid content type for SOAP: TEXT/ using Sender SOAP adapter

    Hi all,
    When I am using Sender SOAP adapter, i am getting (MessagingException: Could not parse XMBMessage. Reason: java.io.IOException: invalid content type for SOAP: TEXT/HTML using connection SOAP_http://sap.com/xi/XI/System) exception.
    From my RWB I can see:
    2009-05-25 16:18:39 Information The message was successfully retrieved from the call queue.
    2009-05-25 16:18:39 Information The message status was set to DLNG.
    2009-05-25 16:18:39 Error Failed to parse the XI system response.
    2009-05-25 16:18:39 Error The message was successfully transmitted to endpoint com.sap.engine.interfaces.messaging.api.exception.MessagingException: XIMessage creation failed (inbound). Reason: com.sap.engine.interfaces.messaging.api.exception.MessagingException: Could not parse XMBMessage. Reason: java.io.IOException: invalid content type for SOAP: TEXT/HTML using connection SOAP_http://sap.com/xi/XI/System.
    2009-05-25 16:18:39 Error The message status was set to FAIL.
    2009-05-25 16:18:39 Error Returning to application. Exception: com.sap.engine.interfaces.messaging.api.exception.MessagingException: XIMessage creation failed (inbound). Reason: com.sap.engine.interfaces.messaging.api.exception.MessagingException: Could not parse XMBMessage. Reason: java.io.IOException: invalid content type for SOAP: TEXT/HTML
    Please help if possible! Thanks!
    Mayank

    Hi,
    Check in SLD your integration engine business system have the following
    pipeline url : http://server:httpport/sap/xi/engine?type=entry
    check Http port also
    After that go to TCODE - SXMB_ADM - integrationn engine configuration and check if your server is configured as HUB with the same url or not.
    Thanks
    Kasturika Phukan

  • SOAP adapter error: invalid content type for SOAP: TEXT/HTML.

    Dear SAP experts,
    Need your help again here.
    Currently, i am getting this specific error in my RWB logs.
    The connection is from SAP XI going to Trading Partner via SOAP adapter.
    The specific error is:
    Delivery of the message to the application using connection SOAP_http://sap.com/xi/XI/System failed, due to: com.sap.aii.af.ra.ms.api.RecoverableException: java.io.IOException: invalid content type for SOAP: TEXT/HTML.
    I've already searched on what is causing the issue and it seems majority of the information is that, the error might be due to incorrect/wrong URL that was set in the configurations in the SAP XI communication channel.
    Can you confirm this one?
    DO you have any thoughts on this error?
    Please help.
    Thank you very much!
    Fred

    Hi Freddiesan,
    First of all, test your URL acessing it from SAP PI server's local browser to check firewall and router settings.
    If it works, check these blogs:
    Regards,
    Rogério
    Edited by: Rogério Tambellini on Jul 3, 2009 12:52 PM

  • Complex return type for operations in Application Services

    Hi all,
    I am trying to create a complex return type for one of operation in CAF Application service.I have created a complex dataStructure  named productList and added product bussiness object as its attribute with cardinality 0--n. And used product dataType as my return type.
    But I am not getting any output but its work fine with cardinality 0--1.
    I am using CE 7.1 SP5 trial version.......
    Can anyone

    Hi,
    And used product dataType as my return type.
    Are you sure you did not forgot to change you operations return type to "productList"?
    Best regards
    Philipp

  • Formatting CF data for a web service complex type

    I am trying to call a web service with the following definition in the WSDL
    <s:element name="CreateDataList">
         <s:complexType>
              <s:sequence>
                   <s:element minOccurs="0" maxOccurs="1" name="client_app_id" type="s:string"/>
                   <s:element minOccurs="0" maxOccurs="1" name="client_app_pwd" type="s:string"/>
                   <s:element minOccurs="1" maxOccurs="1" name="data_template_id" type="s:int"/>
                   <s:element minOccurs="1" maxOccurs="1" name="calculate_persistent_values" type="s:int"/>
                   <s:element minOccurs="0" maxOccurs="1" name="data" type="tns:ArrayOfArrayOfName_value"/>
              </s:sequence>
         </s:complexType>
    </s:element>
    <s:complexType name="ArrayOfArrayOfName_value">
         <s:sequence>
              <s:element minOccurs="0" maxOccurs="unbounded" name="record" type="tns:ArrayOfName_value"/>
         </s:sequence>
    </s:complexType>
    <s:complexType name="ArrayOfName_value">
         <s:sequence>
              <s:element minOccurs="0" maxOccurs="unbounded" name="variable" type="tns:name_value"/>
         </s:sequence>
    </s:complexType>
    <s:complexType name="name_value">
         <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="name" type="s:string"/>
              <s:element minOccurs="0" maxOccurs="1" name="value" type="s:string"/>
         </s:sequence>
    </s:complexType>
    I am trying to format the ArrayOfArrayOfName_value data and getting an "argument type mismatch" error. The sample PHP code for the data looks like this:
    $data = array(0 => array(
        array('name' => 'FIRST_NAME', 'value' => 'First'),
        array('name' => 'LAST_NAME', 'value' => 'Last'),
        array('name' => 'ADDRESS', 'value' => 'Address'),
        array('name' => 'CITY', 'value' => 'City'),
        array('name' => 'STATE', 'value' => 'State'),
        array('name' => 'ZIP', 'value' => '55555')
    1 => array(
        array('name' => 'FIRST_NAME', 'value' => 'First'),
        array('name' => 'LAST_NAME', 'value' => 'Last'),
        array('name' => 'ADDRESS', 'value' => 'Address'),
        array('name' => 'CITY', 'value' => 'City'),
        array('name' => 'STATE', 'value' => 'State'),
        array('name' => 'ZIP', 'value' => '55555')
    My CF code looks like this:
    <cfset data = ArrayNew(1) />
    <cfset data[1] = ArrayNew(1) />
    <cfset data[1][1] = StructNew() />
    <cfset data[1][1]["name"] = "NAME" />
    <cfset data[1][1]["value"] = "JOhn Doe" />
    <cfset data[1][2] = StructNew() />
    <cfset data[1][2]["name"] = "ADDRESS1" />
    <cfset data[1][2]["value"] = "123 Test St" />
    <cfset data[1][3] = StructNew() />
    <cfset data[1][3]["name"] = "ADDRESS2" />
    <cfset data[1][3]["value"] = "" />
    <cfset data[1][4] = StructNew() />
    <cfset data[1][4]["name"] = "CITY" />
    <cfset data[1][4]["value"] = "Austin" />
    <cfset data[1][5] = StructNew() />
    <cfset data[1][5]["name"] = "STATE" />
    <cfset data[1][5]["value"] = "TX" />
    <cfset data[1][6] = StructNew() />
    <cfset data[1][6]["name"] = "ZIP" />
    <cfset data[1][6]["value"] = "78704" />
    <cfset data[2] = ArrayNew(1) />
    <cfset data[2][1] = StructNew() />
    <cfset data[2][1]["name"] = "NAME" />
    <cfset data[2][1]["value"] = "Jane Doe" />
    <cfset data[2][2] = StructNew() />
    <cfset data[2][2]["name"] = "ADDRESS1" />
    <cfset data[2][2]["value"] = "987 Test St" />
    <cfset data[2][3] = StructNew() />
    <cfset data[2][3]["name"] = "ADDRESS2" />
    <cfset data[2][3]["value"] = "" />
    <cfset data[2][4] = StructNew() />
    <cfset data[2][4]["name"] = "CITY" />
    <cfset data[2][4]["value"] = "Austin" />
    <cfset data[2][5] = StructNew() />
    <cfset data[2][5]["name"] = "STATE" />
    <cfset data[2][5]["value"] = "TX" />
    <cfset data[2][6] = StructNew() />
    <cfset data[2][6]["name"] = "ZIP" />
    <cfset data[2][6]["value"] = "78704" />
    Any suggestions for where I am going wrong would be greatly appreciated.

    If anyone is interested here is the correct CF format for this WSDL complex type definition
    <cfset data = StructNew() />
    <cfset data["record"] = ArrayNew(1) />
    <cfset data["record"][1] = StructNew() />
    <cfset data["record"][1]["variable"] = ArrayNew(1) />
    <cfset data["record"][1]["variable"][1] = StructNew() />
    <cfset data["record"][1]["variable"][1]["name"] = "NAME" />
    <cfset data["record"][1]["variable"][1]["value"] = "John Doe" />
    <cfset data["record"][1]["variable"][2] = StructNew() />
    <cfset data["record"][1]["variable"][2]["name"] = "ADDRESS1" />
    <cfset data["record"][1]["variable"][2]["value"] = "123 Test St" />
    <cfset data["record"][1]["variable"][3] = StructNew() />
    <cfset data["record"][1]["variable"][3]["name"] = "ADDRESS2" />
    <cfset data["record"][1]["variable"][3]["value"] = "" />
    <cfset data["record"][1]["variable"][4] = StructNew() />
    <cfset data["record"][1]["variable"][4]["name"] = "CITY" />
    <cfset data["record"][1]["variable"][4]["value"] = "Austin" />
    <cfset data["record"][1]["variable"][5] = StructNew() />
    <cfset data["record"][1]["variable"][5]["name"] = "STATE" />
    <cfset data["record"][1]["variable"][5]["value"] = "TX" />
    <cfset data["record"][1]["variable"][6] = StructNew() />
    <cfset data["record"][1]["variable"][6]["name"] = "ZIP" />
    <cfset data["record"][1]["variable"][6]["value"] = "78704" />
    <cfset data["record"][2] = StructNew() />
    <cfset data["record"][2]["variable"] = ArrayNew(1) />
    <cfset data["record"][2]["variable"][1] = StructNew() />
    <cfset data["record"][2]["variable"][1]["name"] = "NAME" />
    <cfset data["record"][2]["variable"][1]["value"] = "Jane Doe" />
    <cfset data["record"][2]["variable"][2] = StructNew() />
    <cfset data["record"][2]["variable"][2]["name"] = "ADDRESS1" />
    <cfset data["record"][2]["variable"][2]["value"] = "987 Test St" />
    <cfset data["record"][2]["variable"][3] = StructNew() />
    <cfset data["record"][2]["variable"][3]["name"] = "ADDRESS2" />
    <cfset data["record"][2]["variable"][3]["value"] = "" />
    <cfset data["record"][2]["variable"][4] = StructNew() />
    <cfset data["record"][2]["variable"][4]["name"] = "CITY" />
    <cfset data["record"][2]["variable"][4]["value"] = "Austin" />
    <cfset data["record"][2]["variable"][5] = StructNew() />
    <cfset data["record"][2]["variable"][5]["name"] = "STATE" />
    <cfset data["record"][2]["variable"][5]["value"] = "TX" />
    <cfset data["record"][2]["variable"][6] = StructNew() />
    <cfset data["record"][2]["variable"][6]["name"] = "ZIP" />
    <cfset data["record"][2]["variable"][6]["value"] = "78704" />

  • Parsing xml for complex type using sax

    I have an xsd of below type:
    <xs:complexType name="itemInfo">
        <xs:sequence>
          <xs:element name="displayLineNumber" type="xs:string" minOccurs="0"/>
          <xs:element name="lineNumber" type="xs:integer" minOccurs="0"/>
          <xs:element name="parentLineNumber" type="xs:integer" minOccurs="0"/>
       <xs:element name="service" type="serviceInfo" minOccurs="0" maxOccurs="unbounded"/>
       </xs:sequence>
    </xs:complexType>
    <xs:complexType name="serviceInfo">
        <xs:sequence>
          <xs:element name="displayLineNumber" type="xs:string" minOccurs="0"/>
          <xs:element name="lineNumber" type="xs:integer" minOccurs="0"/>
          <xs:element name="serviceName" type="xs:string" minOccurs="0"/>
          <xs:element name="serviceDescription" type="xs:string" minOccurs="0"/>
          <xs:element name="subscriptionBand" type="subscriptionBandInfo" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="subscriptionBandInfo">
        <xs:sequence>
          <xs:element name="min" type="xs:long"/>
          <xs:element name="max" type="xs:long"/>
          <xs:element name="duration" type="xs:string" minOccurs="0"/>
          <xs:element name="price" type="xs:decimal"/>
        </xs:sequence>
      </xs:complexType>
    I have written a handler and able to handle simple type but how I can handle serviceInfo and subscriptionBandInfo as itemInfo is my root element.
    My handler class is:
    public class ProductHandler
      extends DefaultHandler
      //List to hold ProductInfo object
      private List<ProductInfo> productList = null;
      private ProductInfo product = null;
      public List<ProductInfo> getProductList()
        return productList;
      boolean bDisplayLineNumber = false;
      boolean bLineNumber = false;
      boolean bParentLineNumber = false;
      @Override
      public void startElement(String uri, String localName, String qName, Attributes attributes)
        throws SAXException
        if (qName.equalsIgnoreCase("item"))
        { //create a new ProductInfo and put it in Map
          //initialize ProductInfo object and set id attribute
          product = new ProductInfo();
          //initialize list
          if (productList == null)
            productList = new ArrayList<ProductInfo>();
        else if (qName.equalsIgnoreCase("name"))
          //set boolean values for fields, will be used in setting ProductInfo variables
          bName = true;
        else if (qName.equalsIgnoreCase("displayLineNumber"))
          bDisplayLineNumber = true;
        else if (qName.equalsIgnoreCase("lineNumber"))
          bLineNumber = true;
        else if (qName.equalsIgnoreCase("parentLineNumber"))
          bParentNumber = true;
      @Override
      public void endElement(String uri, String localName, String qName)
        throws SAXException
        if (qName.equalsIgnoreCase("item"))
          //add ProductInfo object to list
          productList.add(product);
      @Override
      public void characters(char ch[], int start, int length)
        throws SAXException
       if (bDisplayLineNumber)
          product.setDisplayLineNumber(Integer.parseInt(new String(ch, start, length)));
          bDisplayLineNumber = false;
       else if (bLineNumber)
          product.setLineNumber(Integer.parseInt(new String(ch, start, length)));
          bLineNumber = false;
        else if (bParentNumber)
          product.setParentNumber(Integer.parseInt(new String(ch, start, length)));
          bParentNumber = false;
      @Override
      public void endElement(String uri, String localName, String qName)
        throws SAXException
        if (qName.equalsIgnoreCase("item"))
          //add ProductInfo object to list
          productList.add(product);
    My ProductInfo class is:
    import com.vpc.schema.ServiceInfo;
    import java.util.ArrayList;
    import java.util.List;
    public class ProductInfo
      private String category, family, subGroup, size, productType, availability;
      private String displayLineNumber;
      private int lineNumber;
      private int parentNumber;
    private List<ServiceInfo> serviceInfo;
      public int getLineNumber()
        return lineNumber;
      public int getParentNumber()
        return parentNumber;
      public List<ServiceInfo> getServiceInfo()
        if (serviceInfo == null)
          serviceInfo = new ArrayList<ServiceInfo>();
        return serviceInfo;
      public void setServiceInfo(List<ServiceInfo> serviceInfo)
        this.serviceInfo = serviceInfo;
    I am able to do parsing for my simple type but when a complex type comes I am not able to do it. So please suggest how I can add complex type

    I suppose the posting of xsd is to show the structure of the xml...
    In any case, I can suggest a couple of things to do for the purpose.
    [1] If you still follow the same line of reasoning using some boolean like bDisplayLineNumber etc to identify the position of the parser traversing the document, you can complete the logic adding bItem (which you did not need under simplified consideration) and bService and bSubscriptionBand to identify at the parent or the grandparent in the case of the "complexType" serviceInfo and even the great-grand-parent in the case of arriving to the complexType subscriptionBandInfo...
    [1.1] With those boolean value, you determine bDisplayLineNumber etc under item directly, and then as well say bDisplayLineNumber_Service under the service etc and then bMin_SubscriptionBand etc under subscriptionBand etc. You just expand the number of those variables to trigger the setting of those fields in the object product, service in the serviceList and subscriptionBand in the subscriptionBandList etc etc.
    [1.2] All the reset of those booleans should be done in the endElement() method rather than in characters() method. That is logically more satisfactory and has a bearing in case there is a mixed content type.
    [1.3] Then when arriving at startElement of service, you make sure you initiate the serviceList, same for subscriptionBand the subscriptionList...
    [1.4] Then when arriving at endElement of service, you use setServiceInfo() setter to pass the serviceList to product and the same when arriving at endElement of serviceBand, you use setSubscriptionBand() setter to pass the subscriptionBand to service.
    ... and then basically that's is it, somewhat laborious and repetitive but the logical layout is clear. (As a side-note, you shouldn't use equalsIgnoreCase(), why should you? xml is case sensitive.)
    [2] Actually, I would suggest a much neater approach, especially when you probe many more levels of complexType. It would be even appear cleaner when you have two levels of depth already...
    [2.1] You maintain a Stack (or an implementation class of Deque, but Stack is largely sufficient here) of element name to guide the parser identifying its whereabout. By such doing, you get ride of all those bXXX's.
    This is a rewrite of the content handler using this approach and I only write the code of capturing service. Adding serviceBand is a matter of repetition of how it is done on service. And it is already clear it appears a lot neater as far as I'm concerned.
    public class ProductHandler extends DefaultHandler {
    Stack<String> tagstack=new Stack<String>();
    private List<ProductInfo> productList = null;
    private ProductInfo product = null;
    private List<ServiceInfo> serviceList=null;
    private ServiceInfo service=null;
    public List<ProductInfo> getProductList() {
      return productList;
    public List<ServiceInfo> getServiceList() {
      return serviceList;
    @Override
    public void startElement(String uri, String localName, String qName, Attributes attributes) {
      if (qName.equals("item")) {
       product = new ProductInfo();
       //initialize list
       if (productList == null) {
        productList = new ArrayList<ProductInfo>();
      } else if (qName.equals("service") && tagstack.peek().equals("item")) {
       service=new ServiceInfo();
       if (serviceList==null) {
        serviceList=new ArrayList<ServiceInfo>();
      tagstack.push(qName);
    @Override
    public void endElement(String uri, String localName, String qName) {
      if (tagstack.peek().equals("item")) {
       //add ProductInfo object to list
       productList.add(product);
      } else if (tagstack.peek().equals("service") && tagstack.search("item")==2) {
       serviceList.add(service);
       product.setServiceInfo(serviceList);
      tagstack.pop();
    @Override
    public void characters(char ch[], int start, int length) throws SAXException {
      String currentName=tagstack.peek();
      int itemPos=tagstack.search("item");
      int servicePos=tagstack.search("service");
      if (currentName.equals("name") && itemPos==2)  {
       product.setName(new String(ch, start, length));
      } else if (currentName.equals("displayLineNumber") && itemPos==2) {
       product.setDisplayLineNumber(Integer.parseInt(new String(ch, start, length)));
      } else if (currentName.equals("lineNumber") && itemPos==2) {
       product.setLineNumber(Integer.parseInt(new String(ch, start, length)));
      } else if (currentName.equals("parentLineNumber") && itemPos==2) {
       product.setParentLineNumber(Integer.parseInt(new String(ch, start, length)));
      } else if (currentName.equals("displayLineNumber") && servicePos==2 && itemPos==3) {
       service.setDisplayLineNumber(Integer.parseInt(new String(ch, start, length)));
      } else if (currentName.equals("lineNumber") && servicePos==2 && itemPos==3) {
       service.setLineNumber(Integer.parseInt(new String(ch, start, length)));
      } else if (currentName.equals("serviceName") && servicePos==2 && itemPos==3) {
       service.setServiceName(new String(ch, start, length));
      } else if (currentName.equals("serviceDescription") && servicePos==2 && itemPos==3) {
       service.setServiceDescription(new String(ch, start, length));

  • How to use Adaptive WebService Model with CAF WebService and Complex Type

    Hi All,
    I am trying to use the Adaptive Web Service Model and call a WebService generated by the CAF. The return type of the WebService is a Complex Type.. I receive an exception when trying to instantiate the Model Node.
    Does anybody know how to use the Adpative Web Service Model with CAF WebServices and Complex Types as return type?
    Help is appreciated..
    Thanks, Johannes

    Thanks Mukesh.
    It is not possible to apply the Service Controller Template on Enterprise Java Bean Models as described in the Document. When I try to aply the template on the EJB Model, NWDS says: Only Webservice Models and RFC Models are supported...???
    I did not find any information about how to return complex types in AWS.. in this document???
    Is there such information available? Has anybody ever done that? There must be a way to do that.. Is is the standard approach, isn't it...? Please help me out there.. I need to get this running..
    Thanks, Johannes

  • Change IDoc type used for XIF adapter

    Hi,
    I am using IDOC ZCRMXIF_PARTNER_SAVE_M01 to send data from XI to CRM. It is a generated IDOC from transaction BDFG for XIF adapter. I need to change a segment max value from 1 to 5 in order to send multiple segments. Can you please advise that from where this structure can be change so I can generate the IDoc again. Any suggestions would be appreciated.
    Thanks in advance !
    Regards,
    Faiq

    Hi Amit,
    I tried that but as the IDoc is generated from BDFG so it cannot be changed from here. BDFG gives:
    message type, Idoc type, Function module, Function group. Later generates the IDoc from them. I am not sure that in which of the above steps it lets me change. Do I have to make change in the function module.
    Thanks in advance.
    Regards,
    Faiq

  • Type F plug for 85W adapter?

    I'm an American teaching English in Korea and I rely heavily on my lovely little 15.4" Macbook Pro (1.83 CoreDuo.) It's a big pain to drag the machine and power adapter back and forth to and from the school every day, so I'm thinking about buying an extra power adapter..or maybe just an extra AC cord. My question is:
    does Apple offer an AC cord with a type F plug (CEE 7/4 "Schuko") for 85W magsafe power adapters?
    In Korea standard outlets accept type F, C, and E plugs. Currently I am relying on a cheap little adapter (type C) that not only looks unreliable and dangerous but is a pain in the butt to have sticking on the end of my standard U.S. type B AC cord. Probably a stupid question, but I have looked around on Ebay and poked around on Apple's site a bit, but I've been unsuccessful. I can't use their Korean site because my Korean is not all that good.

    The Apple World Travel Adapter Kit has a duckhead plug for Korea (the round thick pins, which is different than the round thin pins for continental Europe).
    http://store.apple.com/us/product/M8794G/B
    Here's the pdf manual for the adapter kit, showing the difference:
    http://manuals.info.apple.com/en/WorldTravel_Adapter_KitUG.pdf
    Here's the 85 W MagSafe Adapter in the Korean Store - the picture shows a US-type plug, though (perhaps they simply didn't bother with a different image?)
    http://store.apple.com/kr/product/MA938KH/A
    The stores for EU countries do show the correct plug, e.g.:
    http://store.apple.com/es/product/MA938Z/A

Maybe you are looking for

  • Mac Pro shut down on its own, then on boot up it beeped steadily for 2 min?

    I put my 2009 Mac Pro to sleep then the next day I find it completely shut down! I boot it up and then I hear a steady beep (every second) for about 2 minutes. After 2 minutes the beeping went away. Any idea what caused Mac Pro to shut down on its ow

  • Stopping a header reloading with each page

    I've had loads of conflicting advice on this one. Someone must know surely. How do I stop a flash movie from reloading each time a link button is clicked. In other words I just want the movie to load once on the home page and the integrated buttons t

  • HELP PLEASE!!! 2nd iPod in 3 days to die....

    Someone, anyone, please help!!! Saturday while putting music on my iPod - it died - it automatically went into disk mode - it would not restore or anything, so I took it back to Walmart and exchanged it. Well, here I am with the new one, and it's don

  • Force quitting applications only makes things worse...

    iTunes has never presented me with so many problems: http://discussions.apple.com/thread.jspa?threadID=1426749&tstart=0 Adium and Transmission also having this problem where the application freezes (at the most random times), then force quitting (whi

  • 10.4.11 update - now MS Office not responding

    Hi, Since I updated to Mac OS X 10.4.11 today, none of my MS Office applications are responding. I click on the icon and it starts to do something, as if it is about to open, but then nothing comes of it. I have tried to uninstall MS Office but even