Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'messageFactory' defined in class path resource [ggr-server-clientwebserviceContext.xml]: Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: 'attachmentCacheDir' must be a directory
Lors de la déclaration d'un WebServiceTemplate pour appeler un webservice
<bean id="webServiceTemplateEbx"
class="org.springframework.ws.client.core.WebServiceTemplate">
<constructor-arg ref="messageFactory" />
<property name="defaultUri" value="=http://localhost:2580/process/myws"/>
<property name="marshaller" ref="myWebServiceMarshaller" />
<property name="unmarshaller" ref="myWebServiceMarshaller" />
<property name="messageSender" ref="httpSender" />
</bean>
nous devons déclarer comme argument au constructeur une messageFactory
<bean id="messageFactory"
class="org.springframework.ws.soap.axiom.AxiomSoapMessageFactory">
<property name="payloadCaching" value="true" />
<property name="attachmentCaching" value="true" />
</bean>
Si attachmentCaching est défini à true, SpringWs cherchera à rattacher un répertoire de travail pour gérer le cache. On peut ajouter la déclaration de la proprité attachmentCacheDir dans le bean messageFactory.
Si aucune valeur n'est définie Spring choisira le répertoire défini par défaut (récupération de la variable d'environnement java.io.tmpdir. Cette variable est souvent définie dans les paramètres de la JVM associé à Tomcat et pointe vers le répertoire temp de Tomcat

Aucun commentaire:
Enregistrer un commentaire
Remarque : Seul un membre de ce blog est autorisé à enregistrer un commentaire.