The problem is that i can't send the XSD file (company information inside). 

The problem here seems to be inside xerces (who seems to be used by CXF to
do validation).
xerces call recursively the constructTrees method. I think this method is
normally call for each schema.

In my case I have a first XSD file who import a second one. Finally the
second one include a third one.
Is this kind of multiple XSD files can be the origin of the problem ?

I will try to build a small project with the same configuration of XSDs. If
the same problem happens, I will send it to you.

Thanks

Julien



dkulp wrote:
> 
> 
> On May 27, 2008, at 2:42 AM, jfougere wrote:
> 
>>
>> I would like to know what exactly is done when schema validation is  
>> activated
>> in CXF
>> (ie : <entry key="schema-validation-enabled" value="true" /> ) ?
>>
>> I am still having problem to turn on activation on server side but
>> validation by other means like external tools (xmlSpy) or Java5  
>> Validator
>> API works fine.
>>
>> Do you have any idea of the problem here ?
> 
> 
> Any chance you can file a JIRA and attach a test case that  
> demonstrates the problem?   If I can get a full test case, it's a LOT  
> easier to debug.
> 
> Dan
> 
> 
>>
>>
>> Thanks
>>
>> Julien
>>
>>
>> jfougere wrote:
>>>
>>> Hi Aaron, thanks for your answer.
>>>
>>> I have several XSD's but there is no cyclic reference. In fact the  
>>> first
>>> one import the second one who itself incude the third one. (The  
>>> third one
>>> does not include nether import another xsd).
>>>
>>> Do you have another idea for the cause of this issue ? When I am  
>>> doing
>>> validation by code it works without problem...
>>>
>>> Thanks
>>>
>>> Julien
>>>
>>>
>>> Aaron Pieper wrote:
>>>>
>>>> It looks to me like Xerces is recursing trying to follow your XSD
>>>> imports. Do you have any XSDs that refer to eachother in a cycle?
>>>>
>>>> - Aaron
>>>>
>>>> -----Original Message-----
>>>> From: FOUGERE Julien (Prestataire) [mailto:[EMAIL PROTECTED] 
>>>> ]
>>>> Sent: Monday, May 19, 2008 3:49 AM
>>>> To: [EMAIL PROTECTED]
>>>> Subject: Problem with schema validation (JAX-WS & JAXB)
>>>>
>>>> Hi, I am currently experiencing problem to set up server side schema
>>>> validation. I have a JAX-WS frontend webservice and JAXB  
>>>> databinding.
>>>>
>>>> When I turn schema validation on, I get a stack overflow error. It  
>>>> really
>>>> looks like that xerces is running on an infinite loop....
>>>>
>>>>
>>>>
>>>> Here is my cxf-servlet.xml file :
>>>>
>>>>
>>>>
>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>>
>>>> <beans xmlns="http://www.springframework.org/schema/beans";
>>>>
>>>>      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>>>>
>>>>      xmlns:jaxws="http://cxf.apache.org/jaxws";
>>>>
>>>>      xmlns:soap="http://cxf.apache.org/bindings/soap";
>>>>
>>>>      xsi:schemaLocation="
>>>>
>>>> http://www.springframework.org/schema/beans
>>>>
>>>> http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
>>>>
>>>> http://cxf.apache.org/bindings/soap
>>>>
>>>> http://cxf.apache.org/schemas/configuration/soap.xsd
>>>>
>>>> http://cxf.apache.org/jaxws
>>>>
>>>> http://cxf.apache.org/schemas/jaxws.xsd";>
>>>>
>>>>
>>>>
>>>>    <jaxws:endpoint
>>>>
>>>>        id="BrmService"
>>>>
>>>>        implementor="fr.service.pivot.BrmServiceImpl"
>>>>
>>>>        wsdlLocation="WEB-INF/wsdl/BrmAsyncServices.wsdl"
>>>>
>>>>        address="/BrmService">
>>>>
>>>>        <!--Below is optional; logs SOAP requests/responses to  
>>>> servlet
>>>> container
>>>>
>>>>              output log (for Tomcat: logs/catalina.out)-->
>>>>
>>>>        <jaxws:features>
>>>>
>>>>            <bean class="org.apache.cxf.feature.LoggingFeature"/>
>>>>
>>>>        </jaxws:features>
>>>>
>>>>         <jaxws:properties>
>>>>
>>>>            <entry key="schema-validation-enabled" value="true" />
>>>>
>>>>        </jaxws:properties>
>>>>
>>>>    </jaxws:endpoint>
>>>>
>>>> </beans>
>>>>
>>>>
>>>>
>>>> Here is the stack trace :
>>>>
>>>>
>>>>
>>>> GRAVE: "Servlet.service()" pour la servlet WebServicePort a généré  
>>>> une
>>>> exception
>>>>
>>>> java.lang.StackOverflowError
>>>>
>>>>            at java.util.zip.ZipFile.getEntry(Unknown Source)
>>>>
>>>>            at java.util.jar.JarFile.getEntry(Unknown Source)
>>>>
>>>>            at java.util.jar.JarFile.getJarEntry(Unknown Source)
>>>>
>>>>            at sun.misc.URLClassPath$JarLoader.getResource(Unknown
>>>> Source)
>>>>
>>>>            at sun.misc.URLClassPath$JarLoader.findResource(Unknown
>>>> Source)
>>>>
>>>>            at sun.misc.URLClassPath.findResource(Unknown Source)
>>>>
>>>>            at java.net.URLClassLoader$2.run(Unknown Source)
>>>>
>>>>            at java.security.AccessController.doPrivileged(Native  
>>>> Method)
>>>>
>>>>            at java.net.URLClassLoader.findResource(Unknown Source)
>>>>
>>>>            at java.lang.ClassLoader.getResource(Unknown Source)
>>>>
>>>>            at java.lang.ClassLoader.getResource(Unknown Source)
>>>>
>>>>            at java.lang.ClassLoader.getResource(Unknown Source)
>>>>
>>>>            at java.lang.ClassLoader.getResourceAsStream(Unknown  
>>>> Source)
>>>>
>>>>            at
>>>> org 
>>>> .apache 
>>>> .catalina 
>>>> .loader 
>>>> .WebappClassLoader.getResourceAsStream(WebappClassLoader.java:1176)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org.apache.xalan.internal.xsltc.dom.SecuritySupport12$6.run(Unknown
>>>> Source)
>>>>
>>>>            at java.security.AccessController.doPrivileged(Native  
>>>> Method)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xalan 
>>>> .internal.xsltc.dom.SecuritySupport12.getResourceAsStream(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xalan 
>>>> .internal.xsltc.dom.ObjectFactory.findJarServiceProviderName(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xalan 
>>>> .internal.xsltc.dom.ObjectFactory.lookUpFactoryClassName(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xalan.internal.xsltc.dom.ObjectFactory.lookUpFactoryClass(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xalan.internal.xsltc.dom.XSLTCDTMManager.getDTMManagerClass(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xalan.internal.xsltc.trax.TransformerFactoryImpl.<init>(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> sun.reflect.GeneratedConstructorAccessor45.newInstance(Unknown  
>>>> Source)
>>>>
>>>>            at
>>>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown  
>>>> Source)
>>>>
>>>>            at java.lang.reflect.Constructor.newInstance(Unknown  
>>>> Source)
>>>>
>>>>            at java.lang.Class.newInstance0(Unknown Source)
>>>>
>>>>            at java.lang.Class.newInstance(Unknown Source)
>>>>
>>>>            at javax.xml.transform.FactoryFinder.newInstance(Unknown
>>>> Source)
>>>>
>>>>            at javax.xml.transform.FactoryFinder.find(Unknown Source)
>>>>
>>>>            at  
>>>> javax.xml.transform.TransformerFactory.newInstance(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> org.apache.cxf.wsdl.EndpointReferenceUtils 
>>>> $ 
>>>> SchemaLSResourceResolver 
>>>> .getSchemaAsStream(EndpointReferenceUtils.java:110)
>>>>
>>>>            at
>>>> org.apache.cxf.wsdl.EndpointReferenceUtils 
>>>> $ 
>>>> SchemaLSResourceResolver 
>>>> .resolveResource(EndpointReferenceUtils.java:125)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces.internal.util.DOMEntityResolverWrapper.resolveEntity(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache.xerces.internal.impl.XMLEntityManager.resolveEntity(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces.internal.impl.xs.XMLSchemaLoader.resolveDocument(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces.internal.impl.xs.traversers.XSDHandler.resolveSchema(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>            at
>>>> com 
>>>> .sun 
>>>> .org 
>>>> .apache 
>>>> .xerces 
>>>> .internal.impl.xs.traversers.XSDHandler.constructTrees(Unknown
>>>> Source)
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> When schema validation is turned off, everything works well. I can  
>>>> also
>>>> get the schema validation working with external tools like  
>>>> (xmlSpy) or
>>>> this kind of code :
>>>>
>>>>
>>>>
>>>>  //Validation
>>>>
>>>>              in = new FileInputStream(requestFile);
>>>>
>>>>              SchemaFactory schemaFactory =
>>>> SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
>>>>
>>>>              Schema schema = schemaFactory.newSchema(new
>>>> StreamSource(new File("xsd/EAI.xsd")));
>>>>
>>>>              Validator validator = schema.newValidator();
>>>>
>>>>              validator.validate(new StreamSource(in));
>>>>
>>>>
>>>>
>>>> So it seems that my XSD file is valid.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> May be I'm not using the right way to activate server side schema
>>>> validation. Thanks to everyone who can help me.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> Julien
>>>>
>>>>
>>>>
>>>
>>>
>>
>> -- 
>> View this message in context:
>> http://www.nabble.com/Problem-with-schema-validation-%28JAX-WS---JAXB%29-tp17319174p17484086.html
>> Sent from the cxf-user mailing list archive at Nabble.com.
>>
> 
> ---
> Daniel Kulp
> [EMAIL PROTECTED]
> http://www.dankulp.com/blog
> 
> 
> 
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Problem-with-schema-validation-%28JAX-WS---JAXB%29-tp17319174p17505989.html
Sent from the cxf-user mailing list archive at Nabble.com.

Reply via email to