Bonjour,

j'essaie sans succès à exposer un service via springws.

Le problème : le fichier de mon service (service.xsd) exposé par springws fait référence à un autre <xs:include schemaLocation="secondaire.xsd"/>.

Lorsque je teste mon service avec SOAPUI, j'ai la log d'erreur suivante :
11:27:30,982 DEBUG [WsdlLoader] Getting wsdl component from [http://localhost:8080/APPLI/service.wsdl]
11:27:32,029 INFO [HttpClientSupport$Helper] Initializing SSL
11:27:32,123 DEBUG [WsdlLoader] Getting wsdl component from [http://localhost:8080/APPLI/secondaire.xsd]
11:27:32,123 ERROR [WsdlLoader] Failed to load url [http://localhost:8080/APPLI/cylande.xsd]
11:27:32,123 ERROR [WsdlContext] Loading of definition failed for [http://localhost:8080/APPLI/service.wsdl]; org.apache.xmlbeans.XmlException: error: </body> does not close tag <HR>.
11:27:32,123 ERROR [SoapUI] An error occured [error: </body> does not close tag<HR>.], see error log for details
11:27:32,139 ERROR [WsdlProject] Error importing wsdl: org.apache.xmlbeans.XmlException: error: </body> does not close tag <HR>.
11:27:32,139 ERROR [SoapUI] An error occured [error: </body> does not close tag<HR>.], see error log for details
11:27:32,139 ERROR [SoapUI] An error occured [Error importing wsdl], see error log for details
mon fichier spring-ws:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
	<bean id="service" class="org.springframework.ws.wsdl.wsdl11.DynamicWsdl11Definition">
		<property name="builder">
			<bean class="org.springframework.ws.wsdl.wsdl11.builder.XsdBasedSoap11Wsdl4jDefinitionBuilder">
				<property name="schema" value="/WEB-INF/classes/com/../service.xsd" /> 
				<property name="portTypeName" value="Pays" />
				<property name="targetNamespace" value="http://www.cylande.com" />
				<property name="followIncludeImport" value="true" />
				<property name="locationUri"  value="http://localhost:8080/APPLI/service" />
			</bean>
		</property>
	</bean>
le fichier xsd du service :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" 
xmlns:cylande="http://www.service.com" 
targetNamespace="http://www.service.com" 
elementFormDefault="qualified" 
attributeFormDefault="unqualified">

	<xs:include schemaLocation="secondaire.xsd"/>
	<!-- définition de la demande -->
	<xs:complexType name="serviceRequest">
		<xs:sequence>
			<!-- action a effectuee -->
			<xs:element name="operation" type="service:operationType"/>
		</xs:sequence>
	</xs:complexType>
	<!-- définition de la réponse -->
	<xs:complexType name="serviceResponse">
		<xs:sequence>
			<xs:choice>
				<xs:element name="liste" type="service:objetCMO" minOccurs="0" maxOccurs="unbounded"/>
			</xs:choice>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="serviceRequest" type="service:serviceRequest"/>
	<xs:element name="serviceResponse" type="service:serviceResponse"/>
</xs:schema>
Lorsque je teste avec SOAPUI, il cherche le fichier xsd sur http://localhost:8080/... Il devrait chercher le fichier wsdl.

C'est un problème connu qui semble être corrigé dans la version 1.0.x, mais j'utilise la version 1.5.3
Peut-être un problème dans l'écriture des fichiers ?

Merci pour vos idées.