2016-03-31 11 views
0

私はJavaで生成されたJSONストリームをout.writeBytesで作成したものを私のXpageで読み込もうとしています。私はgetServerPortや他のコード(以下のコードに記載)のようなデータを得ることができますが、私はBufferedReaderまたはServletInputStreamでコンテキストを読み込もうとしているときにエラーが発生しています。 Xpageのようなストリームコンテンツを読むための簡単な方法は誰も知っていますか? readLineメソッドがnullを返しました。XpageはJSONコンテキストを読み込みました - http POSTリクエスト

+0

どのようなエラーが表示されますか? –

+0

エラーが発生しました:JVM:java.lang.IllegalStateException:ServletInputStreamの使用中にBufferedReaderを使用できません – user2882496

答えて

1

FDF

var exCon = facesContext.getExternalContext() 
    var httpRequest:javax.faces.contex.ExternalContext =exCon.getRequest(); 

    print("CallCenter getContext "+String(exCon.getContext())) 
    print("CallCenter ContentType "+String(httpRequest.getContentType())) 
    print("CallCenter ContentLength"+String(httpRequest.getContentLength()))   
    print("CallCenter RemoteAddr "+String(httpRequest.getRemoteAddr()  )) 
    print("CallCenter ServerPort "+String(httpRequest.getServerPort())) 

    facesContext.responseComplete(); 

     // ONE OF METHODS I've TRIED ============= 
     var stringBuffer:java.lang.StringBuffer = new java.lang.StringBuffer(80); 
     var line = null;     
     var reader:java.io.BufferedReader = httpRequest.getReader(); 
     while ((line = reader.readLine()) != null) 
      { 
      stringBuffer.append(line); 
      stringBuffer.append("\n"); 
      }  
      print("Buffer "+stringBuffer.toString()); 

      // ============================ 


    } catch(e) { 

    _dump(e); 

一つだけ存在でき:ストリームまたはリーダー。 getReader()の代わりに新しいInputStreamReader(in)を使用します。コンテキストの入力ストリームを指す

+0

ありがとうございました! InputStreamReaderが[email protected](ハッシュ)を返しました - Arrays.toString()のXpage実装は、このコンテンツをプレーンストリングで取得するためには何ですか? – user2882496

+0

ReaderのtoString()メソッドは、ストリームの内容をStringとして返しません。 XPageには特別なものは何もなく、標準のJavaクラスです。あなたはreaderと同じようにreader.readline()ループを実行します – stwissel

関連する問題