Problema cXML PunchoutSetupRequest in Struts2 ... durante la ricezione di richiesta
Domanda
sto usando servlet per rquest recive in Struts2 per cXML foratura di modulo, il documento XML verrà inviato con richiesta di flusso e avevo usato request.getInputStream()
e request.getReader()
a fianco per ricevere, ma quando la richiesta colpisce il mio servlet i rendimenti sistema inputSteram.read()
client remoto - 1, ma i rendimenti req.getContentLength()
lunghezza della stringa XML da richiesta oggetto ....
Come posso superare da questo numero ...? c'è qualche altro modo per realizzare questo processo ..?
Nota: lo stesso servlet opera in ambiente non puntoni .......
Soluzione
risolto: Se si utilizza inputStream in srvlet leggere flusso di valore, non si supponga di utilizzare request.getParameter () .... prima di ottenere valore Stream per InputStream attraverso req.getInputStream () ...
Esempio:
metodo Correct--
InputStream in=req.getInputStream();
StringBuffer xmlStr=new StringBuffer();
int d;
while((d=in.read()) != -1){
xmlStr.append((char)d);
}
System.out.println("xmlStr1--"+xmlStr.toString());
Di seguito il metodo causerà NUMERO:
String str = req.getParameter("SOMETEXT");
InputStream in=req.getInputStream();
StringBuffer xmlStr=new StringBuffer();
int d;
while((d=in.read()) != -1){
xmlStr.append((char)d);
}
System.out.println("xmlStr1--"+xmlStr.toString());