crafterm 2002/09/09 08:48:46
Modified: . changes.xml
lib jars.xml
src/java/org/apache/cocoon/components/language/markup/xsp
SOAPHelper.java
Added: lib/optional commons-httpclient-20020909.jar
Removed: lib/optional commons-httpclient.jar
Log:
Updated Jakarta Commons HTTP client jar. Fixes problems with SOAP XSP
taglib. Modified SOAPHelper class due to recent interface changes in the
HTTP client jar.
PR: 12236
Revision Changes Path
1.243 +5 -1 xml-cocoon2/changes.xml
Index: changes.xml
===================================================================
RCS file: /home/cvs/xml-cocoon2/changes.xml,v
retrieving revision 1.242
retrieving revision 1.243
diff -u -r1.242 -r1.243
--- changes.xml 9 Sep 2002 13:25:38 -0000 1.242
+++ changes.xml 9 Sep 2002 15:48:46 -0000 1.243
@@ -40,6 +40,10 @@
</devs>
<release version="@version@" date="@date@">
+ <action dev="MC" type="update" fixes-bug="12236">
+ Updated Jakarta Commons HTTP client jar. Fixes problems with SOAP XSP
+ taglib.
+ </action>
<action dev="MC" type="add" fixes-bug="12122">
Added new ComposerReader class with various Reader refactorings.
</action>
1.36 +1 -1 xml-cocoon2/lib/jars.xml
Index: jars.xml
===================================================================
RCS file: /home/cvs/xml-cocoon2/lib/jars.xml,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -r1.35 -r1.36
--- jars.xml 3 Sep 2002 10:24:33 -0000 1.35
+++ jars.xml 9 Sep 2002 15:48:46 -0000 1.36
@@ -251,7 +251,7 @@
and feature-rich package implementing the client side of the most recent
HTTP standards and recommendations.</description>
<used-by>SOAP logicsheet, WebServiceProxyGenerator</used-by>
- <lib>optional/commons-httpclient.jar</lib>
+ <lib>optional/commons-httpclient-20020909.jar</lib>
<homepage>http://jakarta.apache.org/commons/httpclient/</homepage>
</file>
<file>
1.1 xml-cocoon2/lib/optional/commons-httpclient-20020909.jar
<<Binary file>>
1.9 +35 -37
xml-cocoon2/src/java/org/apache/cocoon/components/language/markup/xsp/SOAPHelper.java
Index: SOAPHelper.java
===================================================================
RCS file:
/home/cvs/xml-cocoon2/src/java/org/apache/cocoon/components/language/markup/xsp/SOAPHelper.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- SOAPHelper.java 20 Jun 2002 04:30:03 -0000 1.8
+++ SOAPHelper.java 9 Sep 2002 15:48:46 -0000 1.9
@@ -115,51 +115,49 @@
conn = new HttpConnection(host, port);
}
- PostMethod method = new PostMethod(url.getFile()) {
- protected String generateRequestBody(HashMap params) {
- try {
- StringBuffer bodyBuffer
- = new
StringBuffer(super.generateRequestBody(params));
+ PostMethod method = new PostMethod(url.getFile());
+ String request;
- // Write the SOAP request body
- if (xscriptObject instanceof XScriptObjectInlineXML) {
- // Skip overhead
- bodyBuffer.append(((XScriptObjectInlineXML)
xscriptObject).getContent());
- } else {
- InputSource saxSource = xscriptObject.getInputSource();
-
- Reader r = null;
- // Byte stream or character stream?
- if (saxSource.getByteStream() != null) {
- r = new
InputStreamReader(saxSource.getByteStream());
- } else {
- r = saxSource.getCharacterStream();
- }
-
- try {
- char[] buffer = new char[1024];
- int len;
- while ((len = r.read(buffer)) > 0)
- bodyBuffer.append(buffer, 0, len);
- } finally {
- if (r != null) {
- r.close();
- }
- }
- }
+ try {
+ // Write the SOAP request body
+ if (xscriptObject instanceof XScriptObjectInlineXML) {
+ // Skip overhead
+ request = ((XScriptObjectInlineXML) xscriptObject).getContent();
+ } else {
+ StringBuffer bodyBuffer = new StringBuffer();
+ InputSource saxSource = xscriptObject.getInputSource();
+
+ Reader r = null;
+ // Byte stream or character stream?
+ if (saxSource.getByteStream() != null) {
+ r = new InputStreamReader(saxSource.getByteStream());
+ } else {
+ r = saxSource.getCharacterStream();
+ }
- return bodyBuffer.toString();
- } catch (Exception ex) {
- // FIXME (VG): Will result in NPE in httpClient code
- return null;
+ try {
+ char[] buffer = new char[1024];
+ int len;
+ while ((len = r.read(buffer)) > 0)
+ bodyBuffer.append(buffer, 0, len);
+ } finally {
+ if (r != null) {
+ r.close();
+ }
}
+
+ request = bodyBuffer.toString();
}
- };
+
+ } catch (Exception ex) {
+ throw new ProcessingException("Error assembling request", ex);
+ }
method.setRequestHeader(
new Header("Content-type", "text/xml; charset=\"utf-8\""));
method.setRequestHeader(new Header("SOAPAction", action));
method.setUseDisk(false);
+ method.setRequestBody(request);
method.execute(new HttpState(), conn);
----------------------------------------------------------------------
In case of troubles, e-mail: [EMAIL PROTECTED]
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]