Author: ningjiang
Date: Tue Feb  9 02:05:37 2010
New Revision: 907881

URL: http://svn.apache.org/viewvc?rev=907881&view=rev
Log:
CAMEL-2396 applied patch with thanks to Christian

Modified:
    
camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/SoapJaxbDataFormat.java
    
camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/ElementNameStrategy.java
    
camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/ExceptionNameStrategy.java
    
camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/QNameStrategy.java
    
camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/ServiceInterfaceStrategy.java
    
camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/TypeNameStrategy.java
    
camel/trunk/components/camel-soap/src/test/java/org/apache/camel/converter/soap/name/ExceptionNameStrategyTest.java
    
camel/trunk/components/camel-soap/src/test/java/org/apache/camel/converter/soap/name/QNameStrategyTest.java
    
camel/trunk/components/camel-soap/src/test/java/org/apache/camel/converter/soap/name/ServiceInterfaceStrategyTest.java
    
camel/trunk/components/camel-soap/src/test/java/org/apache/camel/converter/soap/name/TypeNameStrategyTest.java

Modified: 
camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/SoapJaxbDataFormat.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/SoapJaxbDataFormat.java?rev=907881&r1=907880&r2=907881&view=diff
==============================================================================
--- 
camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/SoapJaxbDataFormat.java
 (original)
+++ 
camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/SoapJaxbDataFormat.java
 Tue Feb  9 02:05:37 2010
@@ -34,7 +34,6 @@
 import org.apache.camel.converter.soap.name.ElementNameStrategy;
 import org.apache.camel.converter.soap.name.ExceptionNameStrategy;
 import org.apache.camel.converter.soap.name.TypeNameStrategy;
-import org.apache.camel.spi.ClassResolver;
 import org.xmlsoap.schemas.soap.envelope.Body;
 import org.xmlsoap.schemas.soap.envelope.Detail;
 import org.xmlsoap.schemas.soap.envelope.Envelope;
@@ -96,7 +95,6 @@
 
         String soapAction = (String) 
exchange.getProperty(Exchange.SOAP_ACTION);
         Body body = new Body();
-        ClassResolver classResolver = exchange.getContext().getClassResolver();
 
         Throwable exception = exchange.getProperty(Exchange.EXCEPTION_CAUGHT, 
Throwable.class);
         if (exception == null) {
@@ -104,9 +102,9 @@
         }
         final JAXBElement<?> content;
         if (exception != null) {
-            content = createFaultFromException(exception, soapAction, 
classResolver);
+            content = createFaultFromException(exception, soapAction);
         } else {
-            content = createBodyContentFromObject(inputObject, soapAction, 
classResolver);
+            content = createBodyContentFromObject(inputObject, soapAction);
         }
         body.getAny().add(content);
         Envelope envelope = new Envelope();
@@ -128,8 +126,7 @@
      * @return JAXBElement for the body content
      */
     @SuppressWarnings("unchecked")
-    private JAXBElement<?> createBodyContentFromObject(final Object 
inputObject, String soapAction,
-            ClassResolver classResolver) {
+    private JAXBElement<?> createBodyContentFromObject(final Object 
inputObject, String soapAction) {
         Object graph;
         if (inputObject instanceof BeanInvocation) {
             BeanInvocation bi = (BeanInvocation) inputObject;
@@ -141,7 +138,7 @@
         } else {
             graph = inputObject;
         }
-        QName name = 
elementNameStrategy.findQNameForSoapActionOrType(soapAction, graph.getClass(), 
classResolver);
+        QName name = 
elementNameStrategy.findQNameForSoapActionOrType(soapAction, graph.getClass());
         return new JAXBElement(name, graph.getClass(), graph);
     }
 
@@ -152,14 +149,11 @@
      * 
      * @param exception
      * @param soapAction
-     * @param classResolver
      * @return SOAP fault from given Throwable
      */
     @SuppressWarnings("unchecked")
-    private JAXBElement<Fault> createFaultFromException(final Throwable 
exception, String soapAction,
-            ClassResolver classResolver) {
-        QName name = new 
ExceptionNameStrategy().findQNameForSoapActionOrType(soapAction, 
exception.getClass(),
-                classResolver);
+    private JAXBElement<Fault> createFaultFromException(final Throwable 
exception, String soapAction) {
+        QName name = new 
ExceptionNameStrategy().findQNameForSoapActionOrType(soapAction, 
exception.getClass());
         Object faultObject = null;
         try {
             Method method = exception.getClass().getMethod("getFaultInfo");

Modified: 
camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/ElementNameStrategy.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/ElementNameStrategy.java?rev=907881&r1=907880&r2=907881&view=diff
==============================================================================
--- 
camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/ElementNameStrategy.java
 (original)
+++ 
camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/ElementNameStrategy.java
 Tue Feb  9 02:05:37 2010
@@ -18,8 +18,6 @@
 
 import javax.xml.namespace.QName;
 
-import org.apache.camel.spi.ClassResolver;
-
 /**
  * Strategy interface for determining the element name for a SOAP body or fault
  */
@@ -30,8 +28,7 @@
      * 
      * @param soapAction
      * @param type
-     * @param classResolver
      * @return resolved element name
      */
-    QName findQNameForSoapActionOrType(String soapAction, Class<?> type, 
ClassResolver classResolver);
+    QName findQNameForSoapActionOrType(String soapAction, Class<?> type);
 }

Modified: 
camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/ExceptionNameStrategy.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/ExceptionNameStrategy.java?rev=907881&r1=907880&r2=907881&view=diff
==============================================================================
--- 
camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/ExceptionNameStrategy.java
 (original)
+++ 
camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/ExceptionNameStrategy.java
 Tue Feb  9 02:05:37 2010
@@ -19,8 +19,6 @@
 import javax.xml.namespace.QName;
 import javax.xml.ws.WebFault;
 
-import org.apache.camel.spi.ClassResolver;
-
 /**
  * Determine element name for an exception
  */
@@ -29,7 +27,7 @@
     /**
      * @return QName from exception class by evaluating the WebFault 
annotataion
      */
-    public QName findQNameForSoapActionOrType(String soapAction, Class<?> 
type, ClassResolver classResolver) {
+    public QName findQNameForSoapActionOrType(String soapAction, Class<?> 
type) {
         WebFault webFault = type.getAnnotation(WebFault.class);
         if (webFault == null || webFault.targetNamespace() == null) {
             throw new RuntimeException("The type " + type.getName() + " needs 
to have an WebFault annotation with name and targetNamespace");

Modified: 
camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/QNameStrategy.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/QNameStrategy.java?rev=907881&r1=907880&r2=907881&view=diff
==============================================================================
--- 
camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/QNameStrategy.java
 (original)
+++ 
camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/QNameStrategy.java
 Tue Feb  9 02:05:37 2010
@@ -18,8 +18,6 @@
 
 import javax.xml.namespace.QName;
 
-import org.apache.camel.spi.ClassResolver;
-
 /**
  * Simply ElementNameStrategy that returns one preset QName
  */
@@ -38,7 +36,7 @@
     /**
      * @return preset element name
      */
-    public QName findQNameForSoapActionOrType(String soapAction, Class<?> 
type, ClassResolver classResolver) {
+    public QName findQNameForSoapActionOrType(String soapAction, Class<?> 
type) {
         return elementName;
     }
     

Modified: 
camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/ServiceInterfaceStrategy.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/ServiceInterfaceStrategy.java?rev=907881&r1=907880&r2=907881&view=diff
==============================================================================
--- 
camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/ServiceInterfaceStrategy.java
 (original)
+++ 
camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/ServiceInterfaceStrategy.java
 Tue Feb  9 02:05:37 2010
@@ -29,7 +29,6 @@
 import javax.xml.ws.ResponseWrapper;
 
 import org.apache.camel.RuntimeCamelException;
-import org.apache.camel.spi.ClassResolver;
 
 /**
  * Offers a finder for a webservice interface to determine the QName of a
@@ -128,7 +127,7 @@
      * @return matching QName throws RuntimeException if no matching QName was
      *         found
      */
-    public QName findQNameForSoapActionOrType(String soapAction, Class<?> 
type, ClassResolver classResolver) {
+    public QName findQNameForSoapActionOrType(String soapAction, Class<?> 
type) {
         MethodInfo info = soapActionToMethodInfo.get(soapAction);
         if (info != null) {
             if (isClient) {
@@ -145,7 +144,7 @@
         }
         if (qName == null) {
             try {
-                qName = 
fallBackStrategy.findQNameForSoapActionOrType(soapAction, type, classResolver);
+                qName = 
fallBackStrategy.findQNameForSoapActionOrType(soapAction, type);
             } catch (Exception e) {
                 String msg = "No method found that matches the given 
SoapAction " + soapAction + " or that has an "
                         + (isClient ? "input" : "output") + " of type " + 
type.getName();

Modified: 
camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/TypeNameStrategy.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/TypeNameStrategy.java?rev=907881&r1=907880&r2=907881&view=diff
==============================================================================
--- 
camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/TypeNameStrategy.java
 (original)
+++ 
camel/trunk/components/camel-soap/src/main/java/org/apache/camel/converter/soap/name/TypeNameStrategy.java
 Tue Feb  9 02:05:37 2010
@@ -20,8 +20,6 @@
 import javax.xml.bind.annotation.XmlType;
 import javax.xml.namespace.QName;
 
-import org.apache.camel.spi.ClassResolver;
-
 /**
  * Strategy to determine the marshalled element name by looking at the 
annotations of the
  * class to be marshalled
@@ -32,19 +30,16 @@
      * @return determine element name by using the XmlType.name() of the type 
to be
      * marshalled and the XmlSchema.namespace() of the package-info
      */
-    public QName findQNameForSoapActionOrType(String soapAction, Class<?> 
type, ClassResolver classResolver) {
+    public QName findQNameForSoapActionOrType(String soapAction, Class<?> 
type) {
         XmlType xmlType = type.getAnnotation(XmlType.class);
         if (xmlType == null || xmlType.name() == null) {
             throw new RuntimeException("The type " + type.getName() + " needs 
to have an XmlType annotation with name");
         }
         String nameSpace = xmlType.namespace();
         if ("##default".equals(nameSpace)) {
-            try {
-                Class<?> packageInfo = 
classResolver.resolveMandatoryClass(type.getPackage().getName() + 
".package-info");
-                XmlSchema xmlSchema = 
packageInfo.getAnnotation(XmlSchema.class);
+            XmlSchema xmlSchema = 
type.getPackage().getAnnotation(XmlSchema.class);
+            if (xmlSchema != null) {
                 nameSpace = xmlSchema.namespace();
-            } catch (ClassNotFoundException e) {
-                throw new RuntimeException("package info not found for package 
" + type.getPackage().getName(), e);
             }
         }
         return new QName(nameSpace, xmlType.name());

Modified: 
camel/trunk/components/camel-soap/src/test/java/org/apache/camel/converter/soap/name/ExceptionNameStrategyTest.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-soap/src/test/java/org/apache/camel/converter/soap/name/ExceptionNameStrategyTest.java?rev=907881&r1=907880&r2=907881&view=diff
==============================================================================
--- 
camel/trunk/components/camel-soap/src/test/java/org/apache/camel/converter/soap/name/ExceptionNameStrategyTest.java
 (original)
+++ 
camel/trunk/components/camel-soap/src/test/java/org/apache/camel/converter/soap/name/ExceptionNameStrategyTest.java
 Tue Feb  9 02:05:37 2010
@@ -22,7 +22,6 @@
 
 import com.example.customerservice.NoSuchCustomerException;
 
-import org.apache.camel.impl.DefaultClassResolver;
 import org.junit.Test;
 
 public class ExceptionNameStrategyTest {
@@ -30,15 +29,12 @@
     @Test
     public void testServiceInterfaceStrategyWithServer() {
         ExceptionNameStrategy strategy = new ExceptionNameStrategy();
-        DefaultClassResolver resolver = new DefaultClassResolver();
-        QName elName = strategy.findQNameForSoapActionOrType("",
-                NoSuchCustomerException.class, resolver);
-        Assert.assertEquals("http://customerservice.example.com/";, elName
-                .getNamespaceURI());
+        QName elName = strategy.findQNameForSoapActionOrType("", 
NoSuchCustomerException.class);
+        Assert.assertEquals("http://customerservice.example.com/";, 
elName.getNamespaceURI());
         Assert.assertEquals("NoSuchCustomer", elName.getLocalPart());
-        
+
         try {
-            elName = strategy.findQNameForSoapActionOrType("", Class.class, 
resolver);
+            elName = strategy.findQNameForSoapActionOrType("", Class.class);
             Assert.fail();
         } catch (Exception e) {
             // expected here

Modified: 
camel/trunk/components/camel-soap/src/test/java/org/apache/camel/converter/soap/name/QNameStrategyTest.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-soap/src/test/java/org/apache/camel/converter/soap/name/QNameStrategyTest.java?rev=907881&r1=907880&r2=907881&view=diff
==============================================================================
--- 
camel/trunk/components/camel-soap/src/test/java/org/apache/camel/converter/soap/name/QNameStrategyTest.java
 (original)
+++ 
camel/trunk/components/camel-soap/src/test/java/org/apache/camel/converter/soap/name/QNameStrategyTest.java
 Tue Feb  9 02:05:37 2010
@@ -22,8 +22,6 @@
 
 import com.example.customerservice.GetCustomersByName;
 
-import org.apache.camel.impl.DefaultClassResolver;
-import org.apache.camel.spi.ClassResolver;
 import org.junit.Test;
 
 /**
@@ -39,9 +37,8 @@
     public void testQName() {
         QName elementName = new QName("http://my.name.org";, "myElement");
         QNameStrategy strategy = new QNameStrategy(elementName);
-        ClassResolver resolver = new DefaultClassResolver();
         
-        QName actualElementName = strategy.findQNameForSoapActionOrType(null, 
GetCustomersByName.class, resolver);
+        QName actualElementName = strategy.findQNameForSoapActionOrType(null, 
GetCustomersByName.class);
         Assert.assertEquals(elementName, actualElementName);
     }
 }

Modified: 
camel/trunk/components/camel-soap/src/test/java/org/apache/camel/converter/soap/name/ServiceInterfaceStrategyTest.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-soap/src/test/java/org/apache/camel/converter/soap/name/ServiceInterfaceStrategyTest.java?rev=907881&r1=907880&r2=907881&view=diff
==============================================================================
--- 
camel/trunk/components/camel-soap/src/test/java/org/apache/camel/converter/soap/name/ServiceInterfaceStrategyTest.java
 (original)
+++ 
camel/trunk/components/camel-soap/src/test/java/org/apache/camel/converter/soap/name/ServiceInterfaceStrategyTest.java
 Tue Feb  9 02:05:37 2010
@@ -25,7 +25,6 @@
 import com.example.customerservice.GetCustomersByNameResponse;
 
 import org.apache.camel.RuntimeCamelException;
-import org.apache.camel.impl.DefaultClassResolver;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.junit.Test;
@@ -36,17 +35,16 @@
     @Test
     public void testServiceInterfaceStrategyWithClient() {
         ServiceInterfaceStrategy strategy = new 
ServiceInterfaceStrategy(CustomerService.class, true);
-        DefaultClassResolver resolver = new DefaultClassResolver();
-        QName elName = strategy.findQNameForSoapActionOrType("", 
GetCustomersByName.class, resolver);
+        QName elName = strategy.findQNameForSoapActionOrType("", 
GetCustomersByName.class);
         Assert.assertEquals("http://customerservice.example.com/";, 
elName.getNamespaceURI());
         Assert.assertEquals("getCustomersByName", elName.getLocalPart());
         
-        QName elName2 = 
strategy.findQNameForSoapActionOrType("getCustomersByName", 
GetCustomersByName.class, resolver);
+        QName elName2 = 
strategy.findQNameForSoapActionOrType("getCustomersByName", 
GetCustomersByName.class);
         Assert.assertEquals("http://customerservice.example.com/";, 
elName2.getNamespaceURI());
         Assert.assertEquals("getCustomersByName", elName2.getLocalPart());
         
         try {
-            elName = strategy.findQNameForSoapActionOrType("test", 
Class.class, resolver);
+            elName = strategy.findQNameForSoapActionOrType("test", 
Class.class);
             Assert.fail();
         } catch (RuntimeCamelException e) {
             LOG.debug("Caught expected message: " + e.getMessage());
@@ -56,17 +54,16 @@
     @Test
     public void testServiceInterfaceStrategyWithServer() {
         ServiceInterfaceStrategy strategy = new 
ServiceInterfaceStrategy(CustomerService.class, false);
-        DefaultClassResolver resolver = new DefaultClassResolver();
-        QName elName = strategy.findQNameForSoapActionOrType("", 
GetCustomersByNameResponse.class, resolver);
+        QName elName = strategy.findQNameForSoapActionOrType("", 
GetCustomersByNameResponse.class);
         Assert.assertEquals("http://customerservice.example.com/";, 
elName.getNamespaceURI());
         Assert.assertEquals("getCustomersByNameResponse", 
elName.getLocalPart());
 
-        QName elName2 = 
strategy.findQNameForSoapActionOrType("getCustomersByName", 
GetCustomersByName.class, resolver);
+        QName elName2 = 
strategy.findQNameForSoapActionOrType("getCustomersByName", 
GetCustomersByName.class);
         Assert.assertEquals("http://customerservice.example.com/";, 
elName2.getNamespaceURI());
         Assert.assertEquals("getCustomersByNameResponse", 
elName2.getLocalPart());
         
         try {
-            elName = strategy.findQNameForSoapActionOrType("test", 
Class.class, resolver);
+            elName = strategy.findQNameForSoapActionOrType("test", 
Class.class);
             Assert.fail();
         } catch (RuntimeCamelException e) {
             LOG.debug("Caught expected message: " + e.getMessage());
@@ -76,13 +73,12 @@
     @Test
     public void testServiceInterfaceStrategyWithRequestWrapperAndClient() {
         ServiceInterfaceStrategy strategy = new 
ServiceInterfaceStrategy(com.example.customerservice2.CustomerService.class, 
true);
-        DefaultClassResolver resolver = new DefaultClassResolver();
-        QName elName = strategy.findQNameForSoapActionOrType("", 
com.example.customerservice2.GetCustomersByName.class, resolver);
+        QName elName = strategy.findQNameForSoapActionOrType("", 
com.example.customerservice2.GetCustomersByName.class);
         Assert.assertEquals("http://customerservice2.example.com/";, 
elName.getNamespaceURI());
         Assert.assertEquals("getCustomersByName", elName.getLocalPart());
         
         try {
-            elName = strategy.findQNameForSoapActionOrType("test", 
Class.class, resolver);
+            elName = strategy.findQNameForSoapActionOrType("test", 
Class.class);
             Assert.fail();
         } catch (RuntimeCamelException e) {
             LOG.debug("Caught expected message: " + e.getMessage());

Modified: 
camel/trunk/components/camel-soap/src/test/java/org/apache/camel/converter/soap/name/TypeNameStrategyTest.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-soap/src/test/java/org/apache/camel/converter/soap/name/TypeNameStrategyTest.java?rev=907881&r1=907880&r2=907881&view=diff
==============================================================================
--- 
camel/trunk/components/camel-soap/src/test/java/org/apache/camel/converter/soap/name/TypeNameStrategyTest.java
 (original)
+++ 
camel/trunk/components/camel-soap/src/test/java/org/apache/camel/converter/soap/name/TypeNameStrategyTest.java
 Tue Feb  9 02:05:37 2010
@@ -22,8 +22,6 @@
 
 import com.example.customerservice.GetCustomersByName;
 
-import org.apache.camel.impl.DefaultClassResolver;
-import org.apache.camel.spi.ClassResolver;
 import org.junit.Test;
 
 public class TypeNameStrategyTest {
@@ -31,36 +29,31 @@
     @Test
     public void testTypeNameStrategy() {
         TypeNameStrategy strategy = new TypeNameStrategy();
-        ClassResolver resolver = new DefaultClassResolver();
-        QName name = strategy.findQNameForSoapActionOrType("", 
GetCustomersByName.class, resolver);
+        QName name = strategy.findQNameForSoapActionOrType("", 
GetCustomersByName.class);
         Assert.assertEquals("http://customerservice.example.com/";, 
name.getNamespaceURI());
         Assert.assertEquals("getCustomersByName", name.getLocalPart());
     }
-    
+
     @Test
     public void testNoAnnotation() {
         TypeNameStrategy strategy = new TypeNameStrategy();
-        ClassResolver resolver = new DefaultClassResolver();
         try {
-            strategy.findQNameForSoapActionOrType("", String.class, resolver);
+            strategy.findQNameForSoapActionOrType("", String.class);
             Assert.fail();
         } catch (RuntimeException e) {
             // Expected here
         }
     }
-    
+
     @Test
     public void testNoPackageInfo() {
         TypeNameStrategy strategy = new TypeNameStrategy();
-        ClassResolver resolver = new DefaultClassResolver();
-        try {
-            strategy.findQNameForSoapActionOrType("", 
AnnotatedClassWithoutNamespace.class, resolver);
-            Assert.fail();
-        } catch (RuntimeException e) {
-            // Expected here as there is no package info and no namespace on 
class
-        }
-        QName name = strategy.findQNameForSoapActionOrType("", 
AnnotatedClassWithNamespace.class, resolver);
+        QName name = strategy.findQNameForSoapActionOrType("", 
AnnotatedClassWithoutNamespace.class);
         Assert.assertEquals("test", name.getLocalPart());
-        Assert.assertEquals("http://mynamespace";, name.getNamespaceURI());
+        Assert.assertEquals("##default", name.getNamespaceURI());
+
+        QName name2 = strategy.findQNameForSoapActionOrType("", 
AnnotatedClassWithNamespace.class);
+        Assert.assertEquals("test", name2.getLocalPart());
+        Assert.assertEquals("http://mynamespace";, name2.getNamespaceURI());
     }
 }


Reply via email to