Author: mmerz
Date: Wed Oct 20 13:22:10 2004
New Revision: 55181

Modified:
   
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/axis/AxisHook.java
   
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/axis/util/encoding/XmlBeanDeserializer.java
Log:
XmlBean deserialization is now functional at least for fairly simple schemas.
Make sure to use the elementFormDefault="qualified" schema option since Axis 
will
force that anyhow and cause all sorts of namespace problems.

Fixed a typo in AxisHook.java also.

Contributor: Jonathan Colwell



Modified: 
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/axis/AxisHook.java
==============================================================================
--- 
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/axis/AxisHook.java
   (original)
+++ 
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/axis/AxisHook.java
   Wed Oct 20 13:22:10 2004
@@ -127,7 +127,7 @@
         
                     ParameterDesc pd = new ParameterDesc();
                     pd.setQName(new QName(param.getWpTargetNamespace(),
-                                          param.getWpName());
+                                          param.getWpName()));
                     Class paramType = param.getJavaType();
                     configureTypeMapping(sd, paramType);
                     pd.setJavaType(paramType);

Modified: 
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/axis/util/encoding/XmlBeanDeserializer.java
==============================================================================
--- 
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/axis/util/encoding/XmlBeanDeserializer.java
  (original)
+++ 
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/axis/util/encoding/XmlBeanDeserializer.java
  Wed Oct 20 13:22:10 2004
@@ -59,42 +59,14 @@
         throws SAXException
     {
         try {
-            System.out.println("attempting XmlBean Deserialization");
             MessageElement me = context.getCurElement();
-            System.out.println(me);
-            /*
-            Class[] declaredClasses = mJavaType.getDeclaredClasses();
-            for (Class factory : declaredClasses) {
-                if (factory.getName().endsWith("Factory")) {
-                    Method parse = factory.getMethod("parse",
-                                                     Node.class,
-                                                     XmlOptions.class);
-                    System.out.println(factory.getName() + ".parse returns "
-                                       + parse.getReturnType().getName());
 
-                      XmlOptions opts = new XmlOptions()
-                        .setLoadReplaceDocumentElement(null);
-                    
-                    Document doc = me.getOwnerDocument();
-                    DocumentFragment frag = doc.createDocumentFragment();
-                    Node kid = me.getFirstChild();
-                    while (kid != null) {
-                        frag.appendChild(frag.getOwnerDocument()
-                                         .importNode(kid, true));
-                        kid = kid.getNextSibling();
-                    }
-                    System.out.println(frag.toString());                    
-             
-                    setValue(mJavaType.cast(parse.invoke(null, frag)));
-                    break;
-                }
-            }
-            */
-            XmlObject xObj = XmlObject.Factory.parse(me);
+            XmlOptions opts = new XmlOptions()
+                .setLoadReplaceDocumentElement(null);
+            XmlObject xObj = XmlObject.Factory.parse(me, opts);
             SchemaType st = xObj.schemaType();
             SchemaType jt = (SchemaType)mJavaType.getField("type").get(null);
-            System.out.println("known SchemaType: " + jt.getName());
-            System.out.println("current SchemaType: " + st.getName());
+            
             XmlObject converted = xObj.changeType(jt);
             if (converted != null) {
                 setValue(converted);
@@ -103,7 +75,6 @@
                 XmlObject[] children = xObj.selectChildren(QNameSet.ALL);
                 for (XmlObject kid : children) {
                     st = kid.schemaType();
-                    System.out.println("current SchemaType: " + st.getName());
                     converted = xObj.changeType(jt);
                     if (converted != null) {
                         setValue(converted);

Reply via email to