Problema cXML PunchoutSetupRequest in Struts2 ... durante la ricezione di richiesta

StackOverflow https://stackoverflow.com/questions/5348860

  •  27-10-2019
  •  | 
  •  

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 .......

È stato utile?

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());
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top