Hi Jerome ,
thank you for reply,
my servlet container is tomcat 5.2.0 and I use spring also
public class UTERestlet extends Restlet {
private void handle(Request request, Response response) {
try{
//recuperer le context de Spring
SpringContextspringContext=(SpringContext)PrototypeApplication.
getProtoContext().getAttributes().get("SpringContext");
//récupérer l'interface des services UTE
UTEServiceInterface uteService =[UTEServiceInterface)
springContext.getBean("UTEService");
String xml_text="";
//upload de l'image
DiskFileItemFactory factory = new DiskFileItemFactory();
factory.setSizeThreshold(1000240);
RestletFileUpload upload = new RestletFileUpload(factory);
List items = upload.parseRequest(request);
//récupérer le xml et l'image
for (final Iterator it = items.iterator(); it.hasNext(); ) {
FileItem fi = (FileItem)it.next();
if(fi.getFieldName().equals("xml")){
xml_text=fi.getString();
UTEUtils.parserFluXml(xml_text);//parser le flux xml
}
else{
//sauvegarder l'image
ImageUtils.saveImage(fi,imageName);
}
}
}catch(Exception e){
e.printStackTrace();
}
}
}
This code is very well but it is 5 times as long as the following code
protected void doPost(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
try {
DiskFileItemFactory factory = new DiskFileItemFactory();
factory.setSizeThreshold(1000240);
ServletFileUpload upload = new ServletFileUpload(factory);
List items = upload.parseRequest(request);
//récupérer le xml et l'image
for (final Iterator it = items.iterator(); it.hasNext(); ) {
FileItem fi = (FileItem)it.next();
if(fi.getFieldName().equals("xml")){
xml_text=fi.getString();
UTEUtils.parserFluXml(xml_text);//parser le flux xml
}
else{
//sauvegarder l'image
ImageUtils.saveImage(fi,imageName);
}
}
}catch(Exception e){
e.printStackTrace();
}
}
thanks,
lotfi