You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by ru...@apache.org on 2001/07/16 01:38:30 UTC

cvs commit: xml-axis/java/test/encoding TestSer.java TestString.java

rubys       01/07/15 16:38:30

  Modified:    java/samples/encoding TestSer.java
               java/src/org/apache/axis Message.java
               java/src/org/apache/axis/encoding
                        DeserializationContext.java
               java/src/org/apache/axis/message RPCHandler.java
               java/test/RPCDispatch TestRPC.java
               java/test/encoding TestSer.java TestString.java
  Log:
  Ensure messageType is set prior to deserialization; use messageType
  when accessing the ServiceDescription.
  
  Revision  Changes    Path
  1.10      +2 -2      xml-axis/java/samples/encoding/TestSer.java
  
  Index: TestSer.java
  ===================================================================
  RCS file: /home/cvs/xml-axis/java/samples/encoding/TestSer.java,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- TestSer.java	2001/07/15 16:40:00	1.9
  +++ TestSer.java	2001/07/15 23:38:28	1.10
  @@ -67,9 +67,9 @@
               TypeMappingRegistry reg = msgContext.getTypeMappingRegistry();
               reg.addDeserializerFactory(dataQName, Data.class, DataSer.getFactory());
               
  -            DeserializationContext dser = new DeserializationContext(new InputSource(reader), msgContext);
  +            DeserializationContext dser = new DeserializationContext(
  +                new InputSource(reader), msgContext, ServiceDescription.REQUEST);
               SOAPEnvelope env = dser.getEnvelope();
  -            env.setMessageType(ServiceDescription.REQUEST);
               
               RPCElement rpcElem = (RPCElement)env.getFirstBody();
               RPCParam struct = rpcElem.getParam("struct");
  
  
  
  1.39      +3 -5      xml-axis/java/src/org/apache/axis/Message.java
  
  Index: Message.java
  ===================================================================
  RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/Message.java,v
  retrieving revision 1.38
  retrieving revision 1.39
  diff -u -r1.38 -r1.39
  --- Message.java	2001/07/15 16:40:01	1.38
  +++ Message.java	2001/07/15 23:38:28	1.39
  @@ -303,7 +303,8 @@
               is = new InputSource(new StringReader(getAsString()));
           }
           SAXParser parser = XMLUtils.getSAXParser();
  -        DeserializationContext dser = new DeserializationContext(msgContext);
  +        DeserializationContext dser = 
  +            new DeserializationContext(msgContext, messageType);
           
           // This may throw a SAXException
           try {
  @@ -312,10 +313,7 @@
               throw new AxisFault(e);
           }
   
  -        SOAPEnvelope env = dser.getEnvelope();
  -        env.setMessageType(messageType);
  -        
  -        setCurrentMessage( env, FORM_SOAPENVELOPE );
  +        setCurrentMessage(dser.getEnvelope(), FORM_SOAPENVELOPE);
           Debug.Print( 2, "Exit: Message::getAsSOAPEnvelope" );
           return( (SOAPEnvelope) currentMessage );
       }
  
  
  
  1.16      +5 -3      xml-axis/java/src/org/apache/axis/encoding/DeserializationContext.java
  
  Index: DeserializationContext.java
  ===================================================================
  RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/encoding/DeserializationContext.java,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- DeserializationContext.java	2001/07/15 16:40:04	1.15
  +++ DeserializationContext.java	2001/07/15 23:38:28	1.16
  @@ -120,19 +120,21 @@
       protected boolean doneParsing = false;
       protected InputSource inputSource = null;
           
  -    public DeserializationContext(MessageContext ctx)
  +    public DeserializationContext(MessageContext ctx, String messageType)
       {
           msgContext = ctx;
           
           envelope = new SOAPEnvelope();
           envelope.setRecorder(recorder);
  +        envelope.setMessageType(messageType);
           
           pushElementHandler(new EnvelopeHandler());
       }
       
  -    public DeserializationContext(InputSource is, MessageContext ctx)
  +    public DeserializationContext(InputSource is, MessageContext ctx, 
  +                                  String messageType)
       {
  -        this(ctx);
  +        this(ctx, messageType);
           inputSource = is;
       }
       
  
  
  
  1.2       +2 -1      xml-axis/java/src/org/apache/axis/message/RPCHandler.java
  
  Index: RPCHandler.java
  ===================================================================
  RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/message/RPCHandler.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- RPCHandler.java	2001/07/15 16:40:09	1.1
  +++ RPCHandler.java	2001/07/15 23:38:29	1.2
  @@ -103,7 +103,8 @@
               // but if we don't find one, see if the ServiceDescription
               // might shed some light...
               if (serviceDesc != null) {
  -                type = serviceDesc.getInputParamTypeByName(localName);
  +                String msgType = context.getEnvelope().getMessageType();
  +                type = serviceDesc.getParamTypeByName(msgType, localName);
               }
               
               // and if we still don't know, check the introspected types
  
  
  
  1.17      +1 -1      xml-axis/java/test/RPCDispatch/TestRPC.java
  
  Index: TestRPC.java
  ===================================================================
  RCS file: /home/cvs/xml-axis/java/test/RPCDispatch/TestRPC.java,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  --- TestRPC.java	2001/07/15 16:40:15	1.16
  +++ TestRPC.java	2001/07/15 23:38:29	1.17
  @@ -61,7 +61,7 @@
           // Create the message context
           MessageContext msgContext = new MessageContext(engine);
           DeserializationContext deserContext =
  -            new DeserializationContext(msgContext);
  +            new DeserializationContext(msgContext, ServiceDescription.REQUEST);
   
           // Set the dispatch either by SOAPAction or methodNS
           String methodNS = null;
  
  
  
  1.7       +2 -1      xml-axis/java/test/encoding/TestSer.java
  
  Index: TestSer.java
  ===================================================================
  RCS file: /home/cvs/xml-axis/java/test/encoding/TestSer.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- TestSer.java	2001/07/15 16:40:16	1.6
  +++ TestSer.java	2001/07/15 23:38:30	1.7
  @@ -48,7 +48,8 @@
           
           StringReader reader = new StringReader(msgString);
           
  -        DeserializationContext dser = new DeserializationContext(new InputSource(reader), msgContext);
  +        DeserializationContext dser = new DeserializationContext(
  +            new InputSource(reader), msgContext, ServiceDescription.REQUEST);
           reg = dser.getTypeMappingRegistry();
           reg.addDeserializerFactory(dataQName, Data.class, DataSer.getFactory());
           dser.parse();
  
  
  
  1.7       +2 -1      xml-axis/java/test/encoding/TestString.java
  
  Index: TestString.java
  ===================================================================
  RCS file: /home/cvs/xml-axis/java/test/encoding/TestString.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- TestString.java	2001/07/15 16:40:16	1.6
  +++ TestString.java	2001/07/15 23:38:30	1.7
  @@ -38,7 +38,8 @@
           
           StringReader reader = new StringReader(msgString);
           
  -        DeserializationContext dser = new DeserializationContext(new InputSource(reader), msgContext);
  +        DeserializationContext dser = new DeserializationContext(
  +            new InputSource(reader), msgContext, ServiceDescription.REQUEST);
           dser.parse();
           
           SOAPEnvelope env = dser.getEnvelope();