2011-02-24 3 views
3

My ApplicationはビューにXFormsを使用しています.XFormsは、ユーザーから与えられた答えを含む出力XMLを生成します。次の行を追加した場合Xformエンジンで生成された出力XMLであるJavaコードを取得する方法

<fr:xforms-inspector xmlns:fr="http://orbeon.org/oxf/xml/form-runner"/> 

コードには、生成された出力が画面に表示されます。ユーザー名がamitの場合は、生成されたXMLも付属します。

私は実際にJavaクラスでこの生成されたXMLを取得して、データベースに保存して解析し、その内容を分割したいと考えました。私はそのXMLを取得するために次のコードを試しましたが、生成されたXMLを取得できませんでした。

BufferedReader requestData = new BufferedReader(new InputStreamReader(request.getInputStream())); 
StringBuffer stringBuffer = new StringBuffer(); 
String line; 
try{ 
    while ((line = requestData.readLine()) != null) { 
    stringBuffer.append(line); 
    } 
} catch (Exception e){} 
    return stringBuffer.toString(); 
} 

私が間違っていることを教えてください。

答えて

0

XFormsサブミットを介してサーブレットまたはJSPにXMLを受け取ったサーブレットまたはJSP内にJavaコードを置くことを想定している場合は、手動で行うのではなくXMLパーサーを使用して解析することをお勧めします。 Dom4jでこれを行うのは簡単です。

Document queryDocument = xmlReader.read(request.getInputStream()); 
String query = queryDocument.getRootElement().getStringValue(); 

と参照用

が、これはから取られている例の full source参照:インスタンスがルート要素の内容を取得するために(あなたが受け取るすべてはそれでいくつかのテキストを持つ要素であると仮定)。

関連する問題