Author: dkulp
Date: Mon Apr 7 06:07:19 2008
New Revision: 645490
URL: http://svn.apache.org/viewvc?rev=645490&view=rev
Log:
Merged revisions 644795 via svnmerge from
https://svn.apache.org/repos/asf/incubator/cxf/trunk
........
r644795 | dkulp | 2008-04-04 13:53:50 -0400 (Fri, 04 Apr 2008) | 3 lines
Fix error logging for exception from QueryHandlers
Change to using Stax to write wsdls
........
Modified:
incubator/cxf/branches/2.0.x-fixes/ (props changed)
incubator/cxf/branches/2.0.x-fixes/rt/core/src/main/java/org/apache/cxf/transport/http/WSDLQueryHandler.java
incubator/cxf/branches/2.0.x-fixes/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/ServletController.java
Propchange: incubator/cxf/branches/2.0.x-fixes/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.
Modified:
incubator/cxf/branches/2.0.x-fixes/rt/core/src/main/java/org/apache/cxf/transport/http/WSDLQueryHandler.java
URL:
http://svn.apache.org/viewvc/incubator/cxf/branches/2.0.x-fixes/rt/core/src/main/java/org/apache/cxf/transport/http/WSDLQueryHandler.java?rev=645490&r1=645489&r2=645490&view=diff
==============================================================================
---
incubator/cxf/branches/2.0.x-fixes/rt/core/src/main/java/org/apache/cxf/transport/http/WSDLQueryHandler.java
(original)
+++
incubator/cxf/branches/2.0.x-fixes/rt/core/src/main/java/org/apache/cxf/transport/http/WSDLQueryHandler.java
Mon Apr 7 06:07:19 2008
@@ -19,7 +19,6 @@
package org.apache.cxf.transport.http;
-import java.io.IOException;
import java.io.OutputStream;
import java.net.MalformedURLException;
import java.net.URL;
@@ -37,7 +36,6 @@
import javax.wsdl.Port;
import javax.wsdl.Service;
import javax.wsdl.Types;
-import javax.wsdl.WSDLException;
import javax.wsdl.extensions.ExtensibilityElement;
import javax.wsdl.extensions.schema.Schema;
import javax.wsdl.extensions.schema.SchemaImport;
@@ -46,15 +44,13 @@
import javax.wsdl.extensions.soap12.SOAP12Address;
import javax.wsdl.xml.WSDLWriter;
import javax.xml.namespace.QName;
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.transform.dom.DOMSource;
+import javax.xml.stream.XMLStreamWriter;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;
import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
import org.apache.cxf.Bus;
import org.apache.cxf.catalog.OASISCatalogManager;
@@ -63,6 +59,7 @@
import org.apache.cxf.helpers.CastUtils;
import org.apache.cxf.helpers.XMLUtils;
import org.apache.cxf.service.model.EndpointInfo;
+import org.apache.cxf.staxutils.StaxUtils;
import org.apache.cxf.transports.http.StemMatchingQueryHandler;
import org.apache.cxf.wsdl.WSDLManager;
import org.apache.cxf.wsdl11.ResourceManagerWSDLLocator;
@@ -217,23 +214,19 @@
}
}
doc.setXmlStandalone(true);
- XMLUtils.writeTo(new DOMSource(doc), os);
- } catch (WSDLException wex) {
+ String enc = doc.getXmlEncoding();
+ if (enc == null) {
+ enc = "utf-8";
+ }
+
+ XMLStreamWriter writer = StaxUtils.createXMLStreamWriter(os,
+ enc);
+ StaxUtils.writeNode(doc, writer, true);
+ writer.flush();
+ } catch (Exception wex) {
throw new WSDLQueryException(new Message("COULD_NOT_PROVIDE_WSDL",
LOG,
baseUri), wex);
- } catch (SAXException e) {
- throw new WSDLQueryException(new Message("COULD_NOT_PROVIDE_WSDL",
- LOG,
- baseUri), e);
- } catch (IOException e) {
- throw new WSDLQueryException(new Message("COULD_NOT_PROVIDE_WSDL",
- LOG,
- baseUri), e);
- } catch (ParserConfigurationException e) {
- throw new WSDLQueryException(new Message("COULD_NOT_PROVIDE_WSDL",
- LOG,
- baseUri), e);
}
}
Modified:
incubator/cxf/branches/2.0.x-fixes/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/ServletController.java
URL:
http://svn.apache.org/viewvc/incubator/cxf/branches/2.0.x-fixes/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/ServletController.java?rev=645490&r1=645489&r2=645490&view=diff
==============================================================================
---
incubator/cxf/branches/2.0.x-fixes/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/ServletController.java
(original)
+++
incubator/cxf/branches/2.0.x-fixes/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/ServletController.java
Mon Apr 7 06:07:19 2008
@@ -135,14 +135,15 @@
OutputStream out = res.getOutputStream();
try {
qh.writeResponse(baseUri, ctxUri, ei, out);
- out.flush();
- return;
} catch (Exception e) {
- //throw new ServletException(e);
- LOG.warning(qh.getClass().getName()
- + " Exception caught writing response: "
- + e.getMessage());
+ LogUtils.log(LOG, Level.WARNING,
+ qh.getClass().getName()
+ + " Exception caught writing
response.",
+ e);
+ throw new ServletException(e);
}
+ out.flush();
+ return;
}
}
}