You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by di...@apache.org on 2007/07/26 15:47:33 UTC

svn commit: r559816 - in /webservices/axis2/trunk/java/modules: fastinfoset/ fastinfoset/src/org/apache/axis2/fastinfoset/ parent/

Author: dims
Date: Thu Jul 26 06:47:32 2007
New Revision: 559816

URL: http://svn.apache.org/viewvc?view=rev&rev=559816
Log:
Fix for AXIS2-2961 - FastInfoset build failure (unit test) in JDK 1.4

Modified:
    webservices/axis2/trunk/java/modules/fastinfoset/pom.xml
    webservices/axis2/trunk/java/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetBuilder.java
    webservices/axis2/trunk/java/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetMessageFormatter.java
    webservices/axis2/trunk/java/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetPOXBuilder.java
    webservices/axis2/trunk/java/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetPOXMessageFormatter.java
    webservices/axis2/trunk/java/modules/parent/pom.xml

Modified: webservices/axis2/trunk/java/modules/fastinfoset/pom.xml
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/fastinfoset/pom.xml?view=diff&rev=559816&r1=559815&r2=559816
==============================================================================
--- webservices/axis2/trunk/java/modules/fastinfoset/pom.xml (original)
+++ webservices/axis2/trunk/java/modules/fastinfoset/pom.xml Thu Jul 26 06:47:32 2007
@@ -52,10 +52,6 @@
 			<artifactId>commons-logging</artifactId>
 		</dependency>
 		<dependency>
-			<groupId>${stax.impl.groupid}</groupId>
-			<artifactId>${stax.impl.artifactid}</artifactId>
-		</dependency>
-		<dependency>
 			<groupId>commons-httpclient</groupId>
 			<artifactId>commons-httpclient</artifactId>
 		</dependency>
@@ -103,6 +99,26 @@
             <artifactId>neethi</artifactId>
         </dependency>
     </dependencies>
+	<profiles>
+		<profile>
+			<id>java14</id>
+			<activation>
+				<jdk>1.4</jdk>
+			</activation>
+			<dependencies>
+				<dependency>
+					<groupId>com.sun.xml.fastinfoset</groupId>
+					<artifactId>FastInfoset</artifactId>
+					<version>1.1.8</version>
+				</dependency>
+				<dependency>
+					<groupId>junit</groupId>
+					<artifactId>junit</artifactId>
+					<version>3.8.2</version>
+				</dependency>
+			</dependencies>
+		</profile>
+	</profiles>
 	<build>
 		<sourceDirectory>src</sourceDirectory>
         <testSourceDirectory>test</testSourceDirectory>

Modified: webservices/axis2/trunk/java/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetBuilder.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetBuilder.java?view=diff&rev=559816&r1=559815&r2=559816
==============================================================================
--- webservices/axis2/trunk/java/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetBuilder.java (original)
+++ webservices/axis2/trunk/java/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetBuilder.java Thu Jul 26 06:47:32 2007
@@ -58,10 +58,10 @@
 		if (logger.isDebugEnabled()) {
 			logger.debug("Processing a Document with the content type: " + contentType);
 		}
+		//Create a instance of the StAX Parser which can handle the fast infoset stream 
 		XMLStreamReader streamReader = new StAXDocumentParser(inputStream);
-		//OMXMLParserWrapper builder = new StAXOMBuilder(streamReader);
 		StAXBuilder builder = new StAXSOAPModelBuilder(streamReader);
-		//TODO Check whether we need to perform any validations here...
+
 		return builder.getDocumentElement();
 	}
 }

Modified: webservices/axis2/trunk/java/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetMessageFormatter.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetMessageFormatter.java?view=diff&rev=559816&r1=559815&r2=559816
==============================================================================
--- webservices/axis2/trunk/java/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetMessageFormatter.java (original)
+++ webservices/axis2/trunk/java/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetMessageFormatter.java Thu Jul 26 06:47:32 2007
@@ -48,7 +48,7 @@
 	private Log logger = LogFactory.getLog(FastInfosetMessageFormatter.class);
 	
 	/**
-	 * Plain Fast Infoset message formatter doesn't need to handle SOAP. Hence do nothing.
+	 * Fast Infoset message formatter doesn't need to handle SOAP. Hence do nothing.
 	 * 
 	 * @see org.apache.axis2.transport.MessageFormatter#formatSOAPAction(org.apache.axis2.context.MessageContext, org.apache.axiom.om.OMOutputFormat, java.lang.String)
 	 */
@@ -65,16 +65,14 @@
 	 */
 	public byte[] getBytes(MessageContext messageContext, OMOutputFormat format)
 			throws AxisFault {
-//		OMElement element = messageContext.getEnvelope().getBody().getFirstElement();
 		OMElement element = messageContext.getEnvelope();
 		ByteArrayOutputStream outStream = new ByteArrayOutputStream();
 		
 		try {
 			//Creates StAX document serializer which actually implements the XMLStreamWriter
 			XMLStreamWriter streamWriter = new StAXDocumentSerializer(outStream);
-//			streamWriter.writeStartDocument();
 			element.serializeAndConsume(streamWriter);
-			//TODO Looks like the SOAP envelop doesn't have a end document tag. Find out why?
+			//TODO Looks like the SOAP envelop doesn't have an end document tag. Find out why?
 			streamWriter.writeEndDocument();
 			
 			return outStream.toByteArray();
@@ -95,7 +93,7 @@
 		String contentType = (String) messageContext.getProperty(Constants.Configuration.CONTENT_TYPE);
 		String encoding = format.getCharSetEncoding();
 		
-		//FIXME Is this a right thing to do? Need to clarify with a vetarant
+		//If the Content Type is not available with the property "Content Type" retrieve it from the property "Message Type"
 		if (contentType == null) {
 			contentType = (String) messageContext.getProperty(Constants.Configuration.MESSAGE_TYPE);
 		}
@@ -146,14 +144,11 @@
 	 */
 	public void writeTo(MessageContext messageContext, OMOutputFormat format,
 			OutputStream outputStream, boolean preserve) throws AxisFault {
-		
-		//OMElement element = messageContext.getEnvelope().getBody().getFirstElement();
         OMElement element = messageContext.getEnvelope();
 		
 		try {
 			//Create the StAX document serializer
 			XMLStreamWriter streamWriter = new StAXDocumentSerializer(outputStream);
-//			streamWriter.writeStartDocument();
 			if (preserve) {
 				element.serialize(streamWriter);
 			} else {

Modified: webservices/axis2/trunk/java/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetPOXBuilder.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetPOXBuilder.java?view=diff&rev=559816&r1=559815&r2=559816
==============================================================================
--- webservices/axis2/trunk/java/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetPOXBuilder.java (original)
+++ webservices/axis2/trunk/java/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetPOXBuilder.java Thu Jul 26 06:47:32 2007
@@ -21,10 +21,8 @@
 import javax.xml.stream.XMLStreamReader;
 
 import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.OMNode;
 import org.apache.axiom.om.impl.builder.StAXBuilder;
 import org.apache.axiom.om.impl.builder.StAXOMBuilder;
-import org.apache.axiom.om.impl.llom.OMNodeImpl;
 import org.apache.axis2.AxisFault;
 import org.apache.axis2.builder.Builder;
 import org.apache.axis2.context.MessageContext;
@@ -34,7 +32,7 @@
 import com.sun.xml.fastinfoset.stax.StAXDocumentParser;
 
 /**
- * @author Sanjaya Karunasena
+ * @author Sanjaya Karunasena (sanjayak@yahoo.com)
  * @date May 19, 2007
  */
 
@@ -58,12 +56,10 @@
 		if (logger.isDebugEnabled()) {
 			logger.debug("Processing a Document with the content type: " + contentType);
 		}
+		//Create a instance of the StAX Parser which can handle the fast infoset stream
 		XMLStreamReader streamReader = new StAXDocumentParser(inputStream);
 		StAXBuilder builder = new StAXOMBuilder(streamReader);
-        //TODO Check whether we need to perform any validations here...
-        OMElement element = builder.getDocumentElement();
-//        element = (OMElement) element.detach();
-//        ((OMNodeImpl) element).setParent(null);
-        return element;
+
+		return builder.getDocumentElement();
 	}
 }

Modified: webservices/axis2/trunk/java/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetPOXMessageFormatter.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetPOXMessageFormatter.java?view=diff&rev=559816&r1=559815&r2=559816
==============================================================================
--- webservices/axis2/trunk/java/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetPOXMessageFormatter.java (original)
+++ webservices/axis2/trunk/java/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetPOXMessageFormatter.java Thu Jul 26 06:47:32 2007
@@ -20,6 +20,11 @@
 
 import com.sun.xml.fastinfoset.stax.StAXDocumentSerializer;
 
+/**
+ * @author Sanjaya Karunasena (sanjayak@yahoo.com)
+ * @date May 19, 2007
+ */
+
 public class FastInfosetPOXMessageFormatter implements MessageFormatter {
 
 	private Log logger = LogFactory.getLog(FastInfosetMessageFormatter.class);
@@ -42,15 +47,16 @@
 	 */
 	public byte[] getBytes(MessageContext messageContext, OMOutputFormat format)
 			throws AxisFault {
+		//For POX drop the SOAP envelope and use the message body
 		OMElement element = messageContext.getEnvelope().getBody().getFirstElement();
 		ByteArrayOutputStream outStream = new ByteArrayOutputStream();
 		
 		try {
 			//Creates StAX document serializer which actually implements the XMLStreamWriter
 			XMLStreamWriter streamWriter = new StAXDocumentSerializer(outStream);
-			//streamWriter.writeStartDocument();
+			//Since we drop the SOAP envelop we have to manually write the start document and the end document events
+			streamWriter.writeStartDocument();
 			element.serializeAndConsume(streamWriter);
-			//TODO Looks like the SOAP envelop doesn't have a end document tag. Find out why?
 			streamWriter.writeEndDocument();
 			
 			return outStream.toByteArray();
@@ -71,7 +77,7 @@
 		String contentType = (String) messageContext.getProperty(Constants.Configuration.CONTENT_TYPE);
 		String encoding = format.getCharSetEncoding();
 		
-		//FIXME Is this a right thing to do? Need to clarify with a vetarant
+		//If the Content Type is not available with the property "Content Type" retrieve it from the property "Message Type"
 		if (contentType == null) {
 			contentType = (String) messageContext.getProperty(Constants.Configuration.MESSAGE_TYPE);
 		}
@@ -122,20 +128,19 @@
 	 */
 	public void writeTo(MessageContext messageContext, OMOutputFormat format,
 			OutputStream outputStream, boolean preserve) throws AxisFault {
-		
+		//For POX drop the SOAP envelope and use the message body
 		OMElement element = messageContext.getEnvelope().getBody().getFirstElement();
-//        OMElement element = messageContext.getEnvelope();
 		
 		try {
 			//Create the StAX document serializer
 			XMLStreamWriter streamWriter = new StAXDocumentSerializer(outputStream);
+			//Since we drop the SOAP envelop we have to manually write the start document and the end document events			
 			streamWriter.writeStartDocument();
 			if (preserve) {
 				element.serialize(streamWriter);
 			} else {
 				element.serializeAndConsume(streamWriter);
 			}
-//			TODO Looks like the SOAP envelop doesn't have a end document tag. Find out why?
 			streamWriter.writeEndDocument();
 		} catch (XMLStreamException xmlse) {
 			logger.error(xmlse.getMessage());

Modified: webservices/axis2/trunk/java/modules/parent/pom.xml
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/parent/pom.xml?view=diff&rev=559816&r1=559815&r2=559816
==============================================================================
--- webservices/axis2/trunk/java/modules/parent/pom.xml (original)
+++ webservices/axis2/trunk/java/modules/parent/pom.xml Thu Jul 26 06:47:32 2007
@@ -114,6 +114,7 @@
         <jettison.version>1.0-RC1</jettison.version>
         <jibx.version>1.1.5</jibx.version>
         <junit.version>4.3.1</junit.version>
+        <junit.version-jdk1.4>3.8.2</junit.version-jdk1.4>
         <log4j.version>1.2.14</log4j.version>
         <maven.archiver.version>2.2</maven.archiver.version>
         <maven.artifact.version>2.0.4</maven.artifact.version>



---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org