@ DATA ELEMENTS V/S BUILT IN DATA TYPES

Hi,
I have 15 fields in a custom table. All the fileds need to hav a definition of char- lt 2.
But the Description i each differs only wrt to the NUMBER sequence.
eg. level 1, level 2...level 15.
Now what is a recommended way to go about it.
Should we define 15 different DATA ELEMENTS for the same, resulting in 15 new objects in the dictionary.
OR should I go in for a simple Built In data type.
I know data elements have advantages when it comes to a. F4 help and Table Maintainance. Is the advantage so significant that we can do with 15 additional objects?
Please Advice.

hi Anand,
there are hundred thousands of object in the Data Dictionary, so 15 won't harm much On the other hand, if you build up an ALV list based on this table, than it is good that you have these texts there with translations, etc.
hope this helps
ec

Similar Messages

  • External SOAP client Accessing Webservice using built in Java Data type

    We have built a webservice and deployed it on WLS. We accessed this from a swing
    client it works fine.The webservice methods uses non-built in JAVA data types
    as parameters.These are Value Objects and the JAVA Serializer and Deserializer
    classes are generated using Ant task itself.The client coding uses Value objects
    given by the Client_jar (generated using <Clientgen> ant task) to pass to the
    webservice. We dont want to go by this way.Is there anyway were in we can pass
    parameters to the method which expects non-built in java datatypes?
    Why i am asking this is, i want to know how an external client (.Net client )
    will be able to exceute my webservice (i.e., passing the required Object which
    the method is expecting)?

    Hi Anish,
    Well first off, your web service doesn't send or receive "objects". It only sends
    and recieves XML, which is in turn converted to/from Java objects at invocation
    time. Second, a .NET (or Perl, or Python, or C++) client will be able to call
    your web service, because the wsdl.exe tool (for .NET) will generate "programming
    language specific" objects from the <types><schema> elements, in the WSDL of your
    web service :-) The wsdl.exe tool will create C# objects from the WSDL, that will
    convert XML to/from C# when your web service is called. That's the beauty of XML
    schema - it's a "universal typing system", so it's not tied to a particular programming
    language. The only issue is whether or not the web services platform vendor's
    XML Schema/WSDL processor, can successfully process the WSDL. Some vendors have
    more complete implementations of the WSDL and XML Schema specs than others, so
    expect varying success here. The one in WLS 7.0 is pretty good, so you shouldn't
    have too many problems consuming WSDL generated by .NET tools (or any other tool
    for that matter).
    Regards,
    Mike Wooten
    "Anish" <[email protected]> wrote:
    >
    We have built a webservice and deployed it on WLS. We accessed this from
    a swing
    client it works fine.The webservice methods uses non-built in JAVA data
    types
    as parameters.These are Value Objects and the JAVA Serializer and Deserializer
    classes are generated using Ant task itself.The client coding uses Value
    objects
    given by the Client_jar (generated using <Clientgen> ant task) to pass
    to the
    webservice. We dont want to go by this way.Is there anyway were in we
    can pass
    parameters to the method which expects non-built in java datatypes?
    Why i am asking this is, i want to know how an external client (.Net
    client )
    will be able to exceute my webservice (i.e., passing the required Object
    which
    the method is expecting)?

  • Accessing Non-Built-In Data Types  webservice??

    While trying to inoke a webservice, which takes in non-built-in data types, the
    following EXCEPTION is thrown.
    [java] javax.xml.soap.SOAPException: failed to serialize interface javax.xml.soap.SOAPElementweblogic.xml.schema.binding.SerializationException:
    mapping lookup failure. class=interface javax.xml.soap.SOAPElement class context=TypedClassContext{schemaType=['http://www.jay.com/com/jay/obsoon/orderstatus']:DoOBSStat
    usWebService}
         While trying to inoke a webservice, which takes in non-built-in data types,
    ERROR is thrown.
         [java] Calling Web Service at: ServiceImpl[
    [java] WebService[
    [java] name=DoOBSStatusWebService,
    [java] javax.xml.rpc.JAXRPCException: failed to invoke operation 'checkJavaObjects'
    due to an error in the soap layer (SAAJ); nested exception is: Message[ failed
    to serialize interface javax.xml.soap.SOAPElementweblogic.xml.schema.binding.SerializationException:
    mapping lookup failure. class=interface javax.xml.soap.SOAPElement class context=TypedClassContext{schemaType=['http://www.jay.com/com/jay/obsoon/orderstatus']:DoOBSStatusWebService}]StackTrace[
    [java] targetNamespace=http://www.jay.com/com/jay/obsoon/orderstatus,
    [java] protocol=http,
    [java] ]
    [java] ]
    [java] javax.xml.soap.SOAPException: failed to serialize interface javax.xml.soap.SOAPElementweblogic.xml.schema.binding.SerializationException:
    mapping lookup failure. class=interface javax.xml.soap.SOAPElement class context=TypedClassContext{schemaType=['http://www.jay.com/com/jay/obsoon/orderstatus']:DoOBSStat
    usWebService}
    [java] at weblogic.webservice.core.DefaultPart.invokeSerializer(DefaultPart.java:328)
    [java] at weblogic.webservice.core.DefaultPart.toXML(DefaultPart.java:297)
    [java] at weblogic.webservice.core.DefaultMessage.toXML(DefaultMessage.java:645)
    [java] at weblogic.webservice.core.ClientDispatcher.send(ClientDispatcher.java:206)
    [java] at weblogic.webservice.core.ClientDispatcher.dispatch(ClientDispatcher.java:143)
    [java] at weblogic.webservice.core.DefaultOperation.invoke(DefaultOperation.java:457)
    [java] at weblogic.webservice.core.DefaultOperation.invoke(DefaultOperation.java:443)
    [java] at weblogic.webservice.core.rpc.CallImpl.invoke(CallImpl.java:558)
    [java] at weblogic.webservice.core.rpc.CallImpl.invoke(CallImpl.java:411)
    [java] at com.jay.obsoon.orderstatus.Client.example(Client.java:87)
    [java] at com.jay.obsoon.orderstatus.Client.main(Client.java:40)
    [java] Caused by: weblogic.xml.schema.binding.SerializationException: mapping
    lookup failure. class=interface javax.xml.soap.SOAPElement class context=TypedClassContext{schemaType=['http://www.jay.com/com/jay/obsoon/orderstatus']:DoOBS
    StatusWebService}
    [java] at weblogic.xml.schema.binding.RuntimeUtils.lookup_serializer(RuntimeUtils.java:151)
    [java] at weblogic.xml.schema.binding.RuntimeUtils.invoke_serializer(RuntimeUtils.java:187)
    [java] at weblogic.xml.schema.binding.RuntimeUtils.invoke_serializer(RuntimeUtils.java:174)
    [java] at weblogic.webservice.core.DefaultPart.invokeSerializer(DefaultPart.java:324)
    [java] ... 10 more
    [java] ]
    [java] at weblogic.webservice.core.rpc.CallImpl.invoke(CallImpl.java:578)
    [java] at weblogic.webservice.core.rpc.CallImpl.invoke(CallImpl.java:411)
    [java] at com.jay.obsoon.orderstatus.Client.example(Client.java:87)
    [java] at com.jay.obsoon.orderstatus.Client.main(Client.java:40)
    [java] Exception in thread "main"
    [java] Java Result: 1
    CLIENT CODE:
    package com.jay.obsoon.orderstatus;
    import javax.xml.rpc.Call;
    import javax.xml.rpc.ParameterMode;
    import javax.xml.rpc.ServiceFactory;
    import javax.xml.rpc.Service;
    import javax.xml.namespace.QName;
    import javax.xml.rpc.encoding.*;
    import java.io.*;
    public class Client
         private static String TARGET_NAMESPACE = "http://www.jay.com/com/jay/obsoon/orderstatus";
         private static QName xsdString = new QName("http://www.w3.org/2001/XMLSchema",
    "string");
         public static void main(String[] args) throws Exception
              System.setProperty("javax.xml.soap.MessageFactory", "weblogic.webservice.core.soap.MessageFactoryImpl");
              System.setProperty( "javax.xml.rpc.ServiceFactory", "weblogic.webservice.core.rpc.ServiceFactoryImpl");
         Client client = new Client();
              String wsdl = (args.length > 0? args[0] : null);
              client.example(wsdl);
         public void example(String wsdlURI) throws Exception
              ServiceFactory factory = ServiceFactory.newInstance();
              QName serviceName = new QName(TARGET_NAMESPACE, "DoOBSStatusWebService");
              QName portName = new QName(TARGET_NAMESPACE, "DoOBSStatusWebServicePort");
              QName operationName = new QName("checkJavaObjects");
              Service service = factory.createService(serviceName); System.out.println("Calling
    Web Service at: "+ service);
              TypeMappingRegistry tmr = service.getTypeMappingRegistry();
              TypeMapping tm = (TypeMapping)tmr.createTypeMapping();
              tm.register(Order.class, serviceName, new com.jay.obsoon.orderstatus.OrderCodec(),
    new com.jay.obsoon.orderstatus.OrderCodec());
              Call call = service.createCall();
              call.setPortTypeName(portName);
              call.setOperationName(operationName);
              call.setTargetEndpointAddress(wsdlURI);
              call.addParameter( "order", serviceName, ParameterMode.INOUT );
              call.setReturnType( XMLType.XSD_STRING );
              Order order = new Order();
              order.setOrderID("ABC");
              order.setOrderDate("05182004");
              log("Hope:" + call.invoke( new Object[] { order } ));
         private static void log(String s)
              System.out.println(s);
    Please let me know what wrong am i doing while accessing the webservice.
    Thanks
    Jay

    Hi Naichen,
    You're going to need to register some type mappings in your client code :-)
    To know which ones, you should examine the <your-service-name>.xml file, in the
    client proxy .JAR, which is produced by the clientgen Ant task. It should contain
    XML that looks something like this:
    <wsdd:type-mapping-entry xmlns:lcl0="http://www.openuri.org/"
    class-name="org.openuri.www.invoke"
    type="lcl0:invoke"
    serializer="org.openuri.www.invokeCodec"
    deserializer="org.openuri.www.invokeCodec">
    </wsdd:type-mapping-entry>
    <wsdd:type-mapping-entry xmlns:lcl0="http://www.openuri.org/"
    class-name="org.openuri.www.invokeResponse"
    type="lcl0:invokeResponse"
    serializer="org.openuri.www.invokeResponseCodec"
    deserializer="org.openuri.www.invokeResponseCodec">
    </wsdd:type-mapping-entry>
    You'll need to create type mapping calls in you client code that looks like this:
    import javax.xml.rpc.encoding.TypeMapping;
    import javax.xml.rpc.encoding.TypeMappingRegistry;
    import weblogic.webservice.core.encoding.stream.SOAPElementCodec;
    import weblogic.xml.xmlnode.XMLNode;
    import com.bea.xml.XmlObject;
    TypeMappingRegistry registry = service.getTypeMappingRegistry();
    TypeMapping typemapping = registry.getTypeMapping(SOAPConstants.URI_NS_SOAP_ENCODING
    typemapping.register(
         javax.xml.soap.SOAPElement.class,
         new QName("http://www.w3.org/2001/XMLSchema", "anyType"),
         new SOAPElementCodec(),
         new SOAPElementCodec()
    typemapping.register(
         javax.xml.soap.SOAPElement.class,
         new QName("http://www.openuri.org/", "YourXMLBeanClassDocument"),
         new SOAPElementCodec(),
         new SOAPElementCodec()
    YourRequestXMLBeanClassDocument request = null;
    YourResponseXMLBeanClassDocument response = null;
    // invoke operation
    try
         XMLNode xmlNodeResponse = (XMLNode)call.invoke(new Object[]{ asXMLNode(request)
         response = YourResponseXMLBeanClassDocument.Factory.parse(xmlNodeResponse.toString());
         log("inStock(String,Call)", "response.xmlText()=\n" + response.xmlText());
    catch (Exception e)
         e.printStackTrace();
    private static XMLNode asXMLNode(XmlObject xmlObject) throws Exception
         XMLNode xmlNode = new XMLNode();
         xmlNode.read(xmlObject.newInputStream());
         return xmlNode;
    You may not have to do the type mapping for the invoke and invokeResponse types
    (or any type relating to an operation/operationResponse element), but I'm pretty
    sure you'll need to do it for the XMLBean types, used as input arguments (or return
    values) to the web service operations. Send me the WSDL, and .xml files from the
    client proxy .jar, if you can't figure things out from the info I've provided
    here. I'll send you back what the client code needs to look like, based on the
    contents of these two files :-)
    Regards,
    Mike Wooten
    "Naichen" <[email protected]> wrote:
    >
    I created one document style webservice by weblogic 81 sp2 workshop,
    both input
    and output to webservice are XML beans.
    When I tried call it with proxy jar file generated by weblogic, it works
    fine,
    When I tried to call it with javax.xml.rpc.Call.
    then I got the similar Exceptions, like
    javax.xml.soap.SOAPException: failed to serialize interface javax.xml.soap.SOAPElementweblogic.xml.schema.binding.SerializationException:
    mapping lookup failure. class=interface javax.xml.soap.SOAPElement class
    context=TypedClassContext{schemaType=['http://www.openuri.org/']:invoke}
         at weblogic.webservice.core.DefaultPart.invokeSerializer(DefaultPart.java:328)
         at weblogic.webservice.core.DefaultPart.toXML(DefaultPart.java:297)
         at weblogic.webservice.core.DefaultMessage.toXML(DefaultMessage.java:645)
         at weblogic.webservice.core.ClientDispatcher.send(ClientDispatcher.java:206)
         at weblogic.webservice.core.ClientDispatcher.dispatch(ClientDispatcher.java:143)
         at weblogic.webservice.core.DefaultOperation.invoke(DefaultOperation.java:457)
         at weblogic.webservice.core.DefaultOperation.invoke(DefaultOperation.java:443)
         at weblogic.webservice.core.rpc.CallImpl.invoke(CallImpl.java:558)
         at weblogic.webservice.core.rpc.CallImpl.invoke(CallImpl.java:411)
         at com.ual.rcc.wsclient.CommonClt.run(CommonClt.java:58)
         at com.ual.rcc.wsclient.CommonClt.main(CommonClt.java:65)
    Caused by: weblogic.xml.schema.binding.SerializationException: mapping
    lookup
    failure. class=interface javax.xml.soap.SOAPElement class context=TypedClassContext{schemaType=['http://www.openuri.org/']:invoke}
         at weblogic.xml.schema.binding.RuntimeUtils.lookup_serializer(RuntimeUtils.java:151)
         at weblogic.xml.schema.binding.RuntimeUtils.invoke_serializer(RuntimeUtils.java:187)
         at weblogic.xml.schema.binding.RuntimeUtils.invoke_serializer(RuntimeUtils.java:174)
         at weblogic.webservice.core.DefaultPart.invokeSerializer(DefaultPart.java:324)
         ... 10 more

  • Error serializing non-built in data type

    hi
    I am getting the following exception while accessing a webservice which uses non-built-in
    data types as parameter to the service method
    Its called ProcessingOrderTO.
    The ProcessingOrderTO has three sub-types.. one of which is a Collection
    Does anybody encountred this before
    I have also attch the WSDL generated .
    I am using wls81 SP1
    thanks
    jas
    java.rmi.RemoteException: web service invoke failed: javax.xml.soap.SOAPException:
    failed to serialize class mypackage.orderprocessing.processing.to.ProcessingOrderTOweblogic.xml.schema.binding.SerializationException:
    mapping lookup failure. class=interface java.util.Collection class context=TypedClassContext{schemaType=['java:language_builtins.util']:Collection};
    nested exception is:
    javax.xml.soap.SOAPException: failed to serialize class mypackage.orderprocessing.processing.to.ProcessingOrderTOweblogic.xml.schema.binding.SerializationException:
    mapping lookup failure. class=interface java.util.Collection class context=TypedClassContext{schemaType=['java:language_builtins.util']:Collection}
    javax.xml.soap.SOAPException: failed to serialize class mypackage.orderprocessing.processing.to.ProcessingOrderTOweblogic.xml.schema.binding.SerializationException:
    mapping lookup failure. class=interface java.util.Collection class context=TypedClassContext{schemaType=['java:language_builtins.util']:Collection}
    at weblogic.webservice.core.DefaultPart.invokeSerializer(DefaultPart.java:328)
    at weblogic.webservice.core.DefaultPart.toXML(DefaultPart.java:297)
    at weblogic.webservice.core.DefaultMessage.toXML(DefaultMessage.java:619)
    at weblogic.webservice.core.ClientDispatcher.send(ClientDispatcher.java:206)
    at weblogic.webservice.core.ClientDispatcher.dispatch(ClientDispatcher.java:143)
    at weblogic.webservice.core.DefaultOperation.invoke(DefaultOperation.java:444)
    at weblogic.webservice.core.DefaultOperation.invoke(DefaultOperation.java:430)
    at weblogic.webservice.core.rpc.StubImpl._invoke(StubImpl.java:270)
    at mypackage.orderprocessing.processing.client.OrderProcessingAssemblerXDBeanPort_Stub.processOrder(OrderProcessingAssemblerXDBeanPort_Stub.java:45)
    at mypackage.orderprocessing.processing.client.Client.main(Client.java:69)
    [OrderProcessingAssemblerXDBean.wsdl]

    Hi Mik
    Thanks for these suggestions.I have now completely moved to specific types, instead
    of the Collections and ArrayList.
    Things seem to be working fine ....thanks for all your help
    thanks
    jas
    "Michael Wooten" <[email protected]> wrote:
    >
    Hi Jas,
    My mistake. I copied the code from a DII client and you are using a Stub
    one :-)
    The correct code is:
    TypeMappingRegistry registry = service.getTypeMappingRegistry();
    Where the service variable is what was returned from your XXX_Impl()
    call.
    You don't have to cast anything, because the object returned from that
    method
    already extends javax.xml.rpc.Service.
    w.r.t. you "moreover" text:
    As long as the definition of the non-built-in types is the same as the
    WSDL you
    sent earlier, you shouldn't have a problem. The question I have is why
    are you
    a using java.util.Collection object on a web service operation's method
    signature,
    in the first place? When you do this, you do to things:
    1. Producing WSDL that has xsd:anyType for element types. xsd:anyTypes
    are fine
    for defining XML grammars (i.e. WSDL, SOAP, etc.), but they add too much
    mystery
    to a business service. They basically tell the WSDL consumer, "the content
    of
    this element can be anything, so you'll have to figure out what it is
    when you
    get it. Hee, hee, hee!"
    2. Introducing Java-specific classes into your web service. If the extrasList
    element always contains the same type of elements, the type for it should
    be an
    array of whatever that object is. If you used an ArrayList because you
    don't know
    how many elements this will be, you can still use it in the implementation,
    and
    call the toArray() method to return a typed array.
    To me, it just seems wrong to use Java container objects (i.e. ArrayList,
    Collection,
    HashMap, Set, etc.) in a web service operation's method signature, because
    it
    goes against the "programming language agnostic" idea of web services
    :-) Just
    my two cents.
    Regards,
    Mike Wooten
    "jas" <[email protected]> wrote:
    hi Michael
    thanks for the reply ..
    I tried using the smippet below .. but instead got a ClassCast Exception
    at
    TypeMappingRegistry registry = ((Service) port).getTypeMappingRegistry();
    Moreover
    1. When i generate client-jars using the clientgen task, the definition
    of my
    non-built-in types is different ...
    2.
    thanks
    jas
    "Michael Wooten" <[email protected]> wrote:
    Hi Jas,
    From the stack trace, it looks like you are using a JAX-RPC stub client.
    Our java.util.Collection
    serializer/deserializer is assigned to the "java:language_builtins.util"
    namespace,
    so you'll need to register the ArrayList and Collection in the TypeMappingRegistry.
    Here's a code snippet:
    import java.util.ArrayList;
    import java.util.Collection;
    import javax.xml.soap.SOAPConstants;
    import javax.xml.namespace.QName;
    import javax.xml.rpc.Service;
    import javax.xml.rpc.encoding.TypeMapping;
    import javax.xml.rpc.encoding.TypeMappingRegistry;
    import weblogic.xml.schema.binding.internal.builtin.JavaUtilArrayListCodec;
    import weblogic.xml.schema.binding.internal.builtin.JavaUtilCollectionCodec;
    TypeMappingRegistry registry = ((Service)port).getTypeMappingRegistry();
    TypeMapping mapping = registry.getTypeMapping(SOAPConstants.URI_NS_SOAP_ENCODING
    mapping.register(
         ArrayList.class,
         new QName("java:language_builtins.util", "ArrayList"),
         new JavaUtilArrayListCodec(),
         new JavaUtilArrayListCodec()
    mapping.register(
         Collection.class,
         new QName("java:language_builtins.util", "Collection"),
         new JavaUtilCollectionCodec(),
         new JavaUtilCollectionCodec()
    //invoke the web service operation that uses the ArrayList and Collection
    There use to be a problem were the type mapping information in the
    MyServiceClient.jar
    (the one that the clientgen Ant task produces), was incorrect, butI
    think this
    was fixed well before WLS 8.1 :-)
    I haven't tested the above with WLS 8.1 SP 1, but I think it may fix
    the problem
    you are having.
    BTW:
    JavaUtilArrayListCodec and JavaUtilCollectionCodec are in ${WL_HOME}/server/lib/webserviceclient.jar.
    Regards,
    Mike Wooten
    "jas" <[email protected]> wrote:
    hi
    I am getting the following exception while accessing a webservice
    which
    uses non-built-in
    data types as parameter to the service method
    Its called ProcessingOrderTO.
    The ProcessingOrderTO has three sub-types.. one of which is a Collection
    Does anybody encountred this before
    I have also attch the WSDL generated .
    I am using wls81 SP1
    thanks
    jas
    java.rmi.RemoteException: web service invoke failed: javax.xml.soap.SOAPException:
    failed to serialize class mypackage.orderprocessing.processing.to.ProcessingOrderTOweblogic.xml.schema.binding.SerializationException:
    mapping lookup failure. class=interface java.util.Collection classcontext=TypedClassContext{schemaType=['java:language_builtins.util']:Collection};
    nested exception is:
    javax.xml.soap.SOAPException: failed to serialize class mypackage.orderprocessing.processing.to.ProcessingOrderTOweblogic.xml.schema.binding.SerializationException:
    mapping lookup failure. class=interface java.util.Collection classcontext=TypedClassContext{schemaType=['java:language_builtins.util']:Collection}
    javax.xml.soap.SOAPException: failed to serialize class mypackage.orderprocessing.processing.to.ProcessingOrderTOweblogic.xml.schema.binding.SerializationException:
    mapping lookup failure. class=interface java.util.Collection classcontext=TypedClassContext{schemaType=['java:language_builtins.util']:Collection}
    at weblogic.webservice.core.DefaultPart.invokeSerializer(DefaultPart.java:328)
    at weblogic.webservice.core.DefaultPart.toXML(DefaultPart.java:297)
    at weblogic.webservice.core.DefaultMessage.toXML(DefaultMessage.java:619)
    at weblogic.webservice.core.ClientDispatcher.send(ClientDispatcher.java:206)
    at weblogic.webservice.core.ClientDispatcher.dispatch(ClientDispatcher.java:143)
    at weblogic.webservice.core.DefaultOperation.invoke(DefaultOperation.java:444)
    at weblogic.webservice.core.DefaultOperation.invoke(DefaultOperation.java:430)
    at weblogic.webservice.core.rpc.StubImpl._invoke(StubImpl.java:270)
    at mypackage.orderprocessing.processing.client.OrderProcessingAssemblerXDBeanPort_Stub.processOrder(OrderProcessingAssemblerXDBeanPort_Stub.java:45)
    at mypackage.orderprocessing.processing.client.Client.main(Client.java:69)

  • How to create a generic stack (whose elements can be of any data types) ???

    How do you define a "Stack" class that takes the Data type as its constructor argument ,and creates a new instance of that stack type ??? e.g. Stack("double") should create a stack of doubles ,and so on...
         Putting it in another way, how do you go about defining a Stack ,if you are not sure what data types will be pushed into it at runtime ??? Making a Stack of Objects doesn't seem the appropriate choice since, in that case also, you won't be sure of which of the "parseInt(),paresDouble(),Integer(),Double() etc." functions to retrieve the value.

    Write your own stack class which delegates push and pop calls to an internal instance of the java.util.Stack. In addition the class has an attribute of type Class. When the push method is invoked the object in the argument will be tested whether it is an instance of the class stored in the type attribute. If not an IllegalArgumentException should be thrown.
    Here is the minimal code for such a type-save stack (the main method shows its usage):
    import java.util.Stack;
    public class TypeSaveStack {
        private Stack _stack = new Stack();
        private Class _type;
        public TypeSaveStack(Class type) {
            _type = type;
        public void push(Object element) {
            if (_type.isInstance(element)) {
                _stack.push(element);
            } else {
                throw new IllegalArgumentException(element
                                  + " is not an instance of " + _type);
        public Object pop() {
            return _stack.pop();
        public static void main(String[] args) {
            TypeSaveStack doubleStack = new TypeSaveStack(Double.class);
            doubleStack.push(new Double(Math.PI));
            System.out.println(doubleStack.pop());
            try {
                doubleStack.push("foo");
            } catch (Exception e) {
                System.out.println(e);
    }

  • JAX-RPC - dynamic wsdl - non-built-in data types

    I thought my recent exp with developing a JAX-RPC client using a dynamic wsdl to communicate to a non-weblogic Web Service might help somebody out there. :-)
    JAX-RPC Mechanism in Weblogic for dynamic_wsdl seems to work only with built-in data types. Weblogic also supports non-built-in data types, but you need to do some extra work! For the user-defined objects, you need to generate their types and register them.
    Note: The samples given in Weblogic 8.1 do not use non-built-in data types!
    Make sure you use the ant task "autotype" in your build.xml to generate the appropriate types (objects to support java-xml and xml-java converstion), types.xml from the wsdl. Register the types.xml file in your calling client code.
    If you do not use register the types for the user-defined classes used in the web services method signatures, then you are likely to get the foll. exception.
    javax.xml.soap.SOAPException: failed to serialize interface javax.xml.soap.SOAPElementw
    eblogic.xml.schema.binding.SerializationException: mapping lookup failure. class=interface javax.xml
    .soap.SOAPElement class context=TypedClassContext{schemaType=['http://svcVodafonePooled.wsdlgen.jipi
    lot.vodafone.com']:getStock}
    C:\Tutorial\WS\dynamic_wsdl>ant run
    Buildfile: build.xml
    run:
    [java] Creating the service...
    [java] Creating the call...
    [java] invoking the call....
    [java] javax.xml.rpc.JAXRPCException: failed to invoke operation 'getStock' due to an error in
    the soap layer (SAAJ); nested exception is: Message[ failed to serialize interface javax.xml.soap.SO
    APElementweblogic.xml.schema.binding.SerializationException: mapping lookup failure. class=interface
    javax.xml.soap.SOAPElement class context=TypedClassContext{schemaType=['http://svcVodafonePooled.ws
    dlgen.jipilot.vodafone.com']:getStock}]StackTrace[
    [java] javax.xml.soap.SOAPException: failed to serialize interface javax.xml.soap.SOAPElementw
    eblogic.xml.schema.binding.SerializationException: mapping lookup failure. class=interface javax.xml
    .soap.SOAPElement class context=TypedClassContext{schemaType=['http://svcVodafonePooled.wsdlgen.jipi
    lot.vodafone.com']:getStock}
    [java] at weblogic.webservice.core.DefaultPart.invokeSerializer(DefaultPart.java:328)
    [java] at weblogic.webservice.core.DefaultPart.toXML(DefaultPart.java:297)
    [java] at weblogic.webservice.core.DefaultMessage.toXML(DefaultMessage.java:645)
    [java] at weblogic.webservice.core.ClientDispatcher.send(ClientDispatcher.java:206)
    [java] at weblogic.webservice.core.ClientDispatcher.dispatch(ClientDispatcher.java:143)
    [java] at weblogic.webservice.core.DefaultOperation.invoke(DefaultOperation.java:457)
    [java] at weblogic.webservice.core.DefaultOperation.invoke(DefaultOperation.java:443)
    [java] at weblogic.webservice.core.rpc.CallImpl.invoke(CallImpl.java:558)
    [java] at weblogic.webservice.core.rpc.CallImpl.invoke(CallImpl.java:411)
    [java] at Main.main(Main.java:61)
    [java] Caused by: weblogic.xml.schema.binding.SerializationException: mapping lookup failure. c
    lass=interface javax.xml.soap.SOAPElement class context=TypedClassContext{schemaType=['http://svcVod
    afonePooled.wsdlgen.jipilot.vodafone.com']:getStock}
    [java] at weblogic.xml.schema.binding.RuntimeUtils.lookup_serializer(RuntimeUtils.java:151)
    [java] at weblogic.xml.schema.binding.RuntimeUtils.invoke_serializer(RuntimeUtils.java:187)
    [java] at weblogic.xml.schema.binding.RuntimeUtils.invoke_serializer(RuntimeUtils.java:174)
    [java] at weblogic.webservice.core.DefaultPart.invokeSerializer(DefaultPart.java:324)
    [java] ... 9 more
    [java] ]
    [java] at weblogic.webservice.core.rpc.CallImpl.invoke(CallImpl.java:578)
    [java] at weblogic.webservice.core.rpc.CallImpl.invoke(CallImpl.java:411)
    [java] at Main.main(Main.java:61)
    [java] Exception in thread "main"
    [java] Java Result: 1

    The foll. code worked fine for me in Weblogic 8.1 SP3, on Windows 2000.
    Note: the 2 important lines of code:
    TypeMappingRegistry registry service.getTypeMappingRegistry();
    registry.registerDefault(new DefaultTypeMapping("types.xml"));
    package auth;
    import java.net.URL;
    import javax.xml.rpc.ServiceFactory;
    import javax.xml.rpc.Service;
    import javax.xml.rpc.Call;
    import javax.xml.rpc.ParameterMode;
    import javax.xml.namespace.QName;
    import javax.xml.rpc.encoding.TypeMapping;
    import javax.xml.rpc.encoding.TypeMappingRegistry;
    import weblogic.webservice.core.encoding.stream.SOAPElementCodec;
    import javax.xml.rpc.encoding.*;
    import weblogic.webservice.encoding.DefaultTypeMapping;
    public class DClient1 {
    static private void print(String msg) {
         System.out.println("DClient1: " + msg);
    public static void main(String[] argv) throws Exception {
    System.setProperty("javax.xml.soap.MessageFactory", "weblogic.webservice.core.soap.MessageFactoryImpl");
    System.setProperty( "javax.xml.rpc.ServiceFactory", "weblogic.webservice.core.rpc.ServiceFactoryImpl");
    ServiceFactory factory = ServiceFactory.newInstance();
    String targetNamespace = "http://www.vishwa.com/amazingworld";
    QName serviceName = new QName(targetNamespace, "GeminiPasswordService");
    QName portName = new QName(targetNamespace, "GeminiPasswordServicePort");
    QName operationName = new QName("", "checkPassword");
    URL wsdlLocation = new URL("http://localhost:7001/GeminiPasswordService/GeminiPasswordService?WSDL");
         print("Creating the service...");
    Service service = factory.createService(wsdlLocation, serviceName);
         print("Creating the call...");
    Call call = service.createCall(portName, operationName);
         TypeMappingRegistry registry = service.getTypeMappingRegistry();
         registry.registerDefault(new DefaultTypeMapping("types.xml"));
         print("invoking the call....");
    Object[] inParams = new Object[2];
    inParams[0] = "clark1";
    inParams[1] = "kent1";
    Object result = call.invoke(inParams);
    print("Client return value: = " + result.toString());
    QName operationName1 = new QName("", "getBook");
    print("Creating the call...");
    Call call1 = service.createCall(portName, operationName1);
    print("invoking the call....");
    Name n = new Name();
         n.setFirstname("Walker");
         n.setAge(50);
         Object[] inParams1 = new Object[1];
         inParams1[0] = n;
    Book b = (Book) call1.invoke(inParams1);
    print("author: " + b.getAuthor());
    print("money: " + b.getMoney());
    }

  • Data types - integer element...

    Hi all,
    I have a little doubt!
    I’m creating a data type and when I need to specify the length of my integer element with fraction values, I have two gaps to fulfill: first TotalDigits and the second is FractionDigits. My question is: If I have an integer (7, 2) my TotalDigits is equal to 9 or 10? I don’t know if coma (,) counts in TotalDigits?
    Thanks in advance,
    Ricardo.

    Hi Ricardo,
              Yes, i agree its better to solve in mapping , you can use DateTrans, please see my replies in this thread and other replies you will get a good idea,
    Conversion for String to Date?
    And in case you are willing to learn about data types and xsd in SAP XI, Did you see this pdf,
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/25c78f79-0801-0010-1e8d-c7f911cf25d1
    Page 8 onwards.
    Regards,
    Anirban.

  • Element VS attribute in IR when we create data type.

    hi guruz,
    when we make data type in  IR ,and while creating node ,according node we give type(Element ,attribue etc).
    what is diff between element and attribute.
    please help me
    warm regards.

    Hi,
    You create complex data types using elements and attributes in the XSD editor
    Element
    Create structured data types. Elements that have a type cannot contain subelements.
    Example Instance
    <myElem>
      <f1> Value of f1 </f1>
      <f2> Value of f2 </f2>
    </myElem>
    Attribute
    Add attributes to elements. Attributes cannot usually have subnodes.
    Example Instance
    <myElem myAttr="AttributeValue">
      Element Value
    </myElem>
    You can flag an attribute as optional or required in the Occurrence column. These values mean the same for elements with an occurrence of 0..1 or 1. The only difference between elements and attributes is that attributes cannot have subnodes and that the same attribute cannot be used more than once in an element.
    Hope this will clarify you.
    Regards
    Aashish Sinha
    PS : reward points if helpful

  • Is it possible to get the element data type of a Queue from itself?

    Hi everyone,
    i have a Q that has a cluster as element data type.
    now when i want to enqueue
    i'll use bundle-by-name
    and for that i'd have to have my data-type present
    (long cable from whereever (possibly from where i obtained the Q).
    my question is,
    whether there is a method/property-node/something that allows me to
    wire the Queue Refnum into it and receive the element-data-type,
    so i can then input into the top of bundle-by-name?
    (i really dont want to have that cable all over the place)
    the reason i ask here is that
    the help for the outgoing Queue Refnum from the Obtain Queue method,
    shows the element-data-type and so i hope there might be a solution.
    thx for your time
    and cheers
    j
    Solved!
    Go to Solution.

    If I understand your question correctly, the answer is "Yes, it's very easy ..."
    The answer is "Preview Queue".  Here I create a Queue of some mysterious type (it's a cluster having a Thing and a Center, but you don't know that yet).  I take the Queue reference from whereever I can find it and pass it into Preview Queue Element.  I take the output and use it to define my cluster in Bundle by Name.
    Two caveats.  This copies the first element of the Queue into the cluster, so you probably need to be sure to define all of the elements of your cluster.  But what if the Queue is empty (as mine is, above, as I just Obtained it) -- well, that's why 0 is wired into the TimeOut input, since I do not want to wait "forever" (-1) for the empty Queue to have an element!  Turns out that even in this case, you still get the correct Cluster elements!
    Neat, huh?
    Bob Schor

  • Type of X equals which data elements or data type

    Hi ABAP Experts,
    I declareted variable type of X in my program.
    (Example TYPES: BEGIN OF T_XML_LINE,
             DATA(1024) TYPE X,
           END OF T_XML_LINE.)
    But I want to create structure with SE11 Tcode in my program. But I dont know Type of X equals which data elements or data type and length.
    Thanks for help.

    Hi,
    You can use the below data type in data dictionary
    RAW:   Uninterpreted byte string, maximum length of 255 in tables
    LRAW: Uninterpreted byte string of any length, but has to be declared with a minimum length of 256
    RAWSTRING: Uninterpreted byte string of variable length
    Regards
    Praveen

  • Attaching a Cluster of 2 elements data type to dynamic data type wire.

    Hey Folks,
    How do I attach a cluster of 2 elements data type of wire with a Dynamic data type wire?
    Or a Build XY Graph to a curve fitting2.
    Thanks for the help.
    Ty

    Hi Ty,
    Try to use the "Express-VI Curve Fitting" which is at: Functions-> Signal Analysis -> Curve Fit.
    You have to put this VI before the "Build XY Graph".
    Otherwise, u can convert the siganls types by using the "Convert from Dynamic Data"
    which is at : Functions-> Signal Mamipulation -> Convert from Dynamic Data.
    Hope it Helps....
    The Bush-Man

  • I am unable to add Data element into existing Data Type

    Hi Experts,
    I am unable to add Data element into existing Data Type, It shows disable mode, suggest me this..
    Thanks

    Yep got it...
    Edited by: Manoj on Aug 20, 2008 1:09 AM

  • OBIEE-Answers Problems with NVARCHAR2 data type elements

    Hello experts,
    After we completed the .rpd development and ported to the real-time environment, when we try to create requests in Answers of Presentation services by selecting certain columns only and try to see results, we are getting an error if the columns are of NVARCHAR type. The error is given below.
    This is stopping end users being not able to create any answers/requests. Please suggest how we can resolve this or if any specific things need to be done to solve the problem.
    Error Codes: OPR4ONWY:U9IM8TAC:OI2DL65P
    State: HY000. Code: 87720170. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 17001] Oracle Error code: 24328, message: ORA-24328: illegal attribute value at OCI call OCIAttrSet. [nQSError: 17007] Error while executing OCIDefine routines. (HY000)

    Hello Damon,
    Thanks for the response.
    We have also tried to query the same data through SQL*Plus and it went well. We had no issues with any data. Also the .RPD is working in our local system with the same data, on windows OS. But when we port the .RPD in the Server (Sun Solaris) we are having problems with the columns which are considered as NVARCHAR2 in the database and VARCHAR in the Physical layer of BI.
    We observed there is no NVARCHAR2 data type supported in BI administrator in building the RPD. Is there any other datatype supports the NVARCHAR2 datatype in BI?
    Thanks,
    Narasimha

  • Performance and data types: which to use?

    Hi All,
    I am wondering what data type to use and the effect of them on memory/speed.
    1. What is the difference (if any) of using sgl, dbl, int etc. Looking at the LabVIEW help there seems to be a range of 8-256 bits of storage according to the data type. Is it basically choose the one with the smallest storage that can fit the data?
    2. I currently have a cluster flowing through subVI's. The cluster contains the start time (or freq), the delta t (or f) and the array of data (about 500-5000 elements). I tried to use the waveform datatype but it couldn't handle a delta t of 2 nanoseconds (500 MHz signal). Am i ok using the cluster, or should i seperate the components and pass them along? What data type should i use for each of the components?
    Thanks

    There are three main issue to consider.
    Range and accuracy. If you need a very high level of accuracy, then you will need to use the extended data type or even create your own, although that's unlikely.
    Memory. Yes, SGL takes less than DBL, but unless you're dealing with really huge amounts of data this won't matter.
    Coercion. Most built in functions work on DBL. If you wire a SGL into them, they will coerce it, possibly creating a copy of the data and increasing your memory usage.
    To sum it up, most of the times it would be best to use the default DBL. It's highly unlikely you'll need one of the others.
    As for your second question, it sounds to me like the data is a single organism, so I would say you should leave it in the cluster, but that really depends on whether the functions need it or not and whether you're constantly bundling and unbundling the cluster. Note that 5000 elements is far from being a large array and you shouldn't have any problems handling it.
    As for the timing unit, if you really only have 5000 elements (that's 10 microseconds of data?) then you should not have a problem with using a U32 with a nanosecond as the base unit. That should give you the ability to measure more than 4 seconds.
    Try to take over the world!

  • Hi all How to define data type 'P' in structure.

    Hi all,
        I need to create data element having type <b>P</b> with 2 decimal pt in se11.
    Plz suggest me which type should I use to create such element as there is no data type as <b>P</b> in se11.

    Hi,
    Yes there is no data type 'P' in se-11 for data element.
    there two way you can define the D.E
    -one is by define with type 'CURR' and give length and decimal places suppose if you define cust_money as  curr length is 12 with in you can give decimal places as 2 or 3 etc a/c your requirement.
    -secon one is you can use the type as 'DEC' and give the legth and decimal places as explained above.
    before creating the data element you can check r they any built in dataelements avialbe suppose for DEC* give in se11 and press F4 then u can find out the list of D.E like there are already some d.E like dec8_2,dec25,DEC11_2 etc...
    <b>Reward with points if helpful.</b>
    Regards,
    Vijay

Maybe you are looking for

  • Problem in code with Google Translate

    hi i have Problem in code with Google Translate Imports Google.API.Translate.Language Imports Google.API.Translate Public Class Form1 Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click Dim text As String = "hello" Dim t

  • The latest iTunes and importing home videos?

    The earlier itunes had an import option under file, but the one I just recently downloaded does not. I want to import a video file (and it is in a format itunes would recognize), but I cannot.

  • AlivePDF seems to flip image alond axis?

    Hi, In my flash file, I allow the user to rotate an image. After the image is rotated, the user can save the edited image as a PDF. I'm using AlivePDF for saves. Here is the problem: If the user rotates in the X or Y, the pdf image looks flipped alon

  • Why I cannot open a link in a new tab, since I upgraded firefox to the latest version ?

    I can't open a google search option in a new tab, since I upgraded Firefox to version 33.0. I also cannot downgrade firefox, to solve this problem.

  • Can't edit text field after grouping

    Hi Folks, I have 3 single-line text fields and a logo combined by using "Add Parent".  For some wierd reason, I cannot select any of the fields to make a text change.  I can select them in the Elements Panel, and make layout or style changes, but as