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 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96
|
package client;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.StringReader;
import javax.faces.context.FacesContext;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Marshaller;
import javax.xml.transform.TransformerException;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;
import metier.Languebean;
import metier.RecupBean;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
import org.springframework.ws.WebServiceMessage;
import org.springframework.ws.client.core.WebServiceMessageCallback;
import org.springframework.ws.client.core.WebServiceTemplate;
import org.springframework.ws.client.core.support.WebServiceGatewaySupport;
import org.springframework.ws.soap.SoapMessage;
import ws.hr.com.schema.recherchel.CVRequest;
import ws.hr.com.schema.recherchel.CVResponse;
import ws.hr.com.schema.recherchel.ObjectFactory;
public class WebServiceClient {
public String doRecupBean5() throws JAXBException, IOException {
Languebean lb = new Languebean();
FacesContext context = FacesContext.getCurrentInstance();
//Récupérer L'objet rempli de la page JSP
lb = (Languebean)context.getApplication().createValueBinding("#{langue}").getValue(context);
System.out.println("---------");
System.out.println(lb.getCODLAN());
// Création du marshaller
JAXBContext contextJC = JAXBContext.newInstance("ws.hr.com.schema.recherchel");
Marshaller marshaller = contextJC.createMarshaller();
ObjectFactory factory=new ObjectFactory();
CVRequest CVR=(CVRequest)(factory.createCVRequestType());
CVR.setLangueRech(lb.getCODLAN());
marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE);
marshaller.marshal(CVR, System.out);
// otherwise file output
File file=new File("C:/MyWorkspace/JSF/src/client/out.xml"); // je stocke mes données dans out.xml que je vais envoyer à l'entrée du webservice
marshaller.marshal(CVR,file );
getData();
/*****************************************************************************************/
return "valider";
}
// j'envoie le fichier out.xml à la source du webservice
public void getData(){
Resource resource = new ClassPathResource("/client/out.xml");
WebServiceTemplate template = new WebServiceTemplate();
StreamSource source = null;
try {
source = new StreamSource(resource.getInputStream());
} catch (IOException e) {
e.printStackTrace();
System.out.println("Errror");
}
StreamResult result = new StreamResult(System.out);
System.out.println("3");
template.sendSourceAndReceiveToResult("http://localhost:8080/spring-wsTest/rechercherLangueService/",source, result);
}
} |
Partager