You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicemix.apache.org by ch...@apache.org on 2006/02/22 00:40:29 UTC
svn commit: r379627 [15/34] - in /incubator/servicemix/trunk: ./ etc/
sandbox/servicemix-wsn-1.2/src/sa/META-INF/
sandbox/servicemix-wsn-1.2/src/su/META-INF/ servicemix-assembly/
servicemix-assembly/src/main/assembly/ servicemix-assembly/src/main/relea...
Modified: incubator/servicemix/trunk/servicemix-http/pom.xml
URL: http://svn.apache.org/viewcvs/incubator/servicemix/trunk/servicemix-http/pom.xml?rev=379627&r1=379626&r2=379627&view=diff
==============================================================================
--- incubator/servicemix/trunk/servicemix-http/pom.xml (original)
+++ incubator/servicemix/trunk/servicemix-http/pom.xml Tue Feb 21 15:40:05 2006
@@ -1,156 +1,156 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
- Copyright 2005 The Apache Software Foundation
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-<!-- $Rev: 356052 $ $Date: 2005-12-11 14:41:20 -0800 (dim., 11 déc. 2005) $ -->
-<project
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns="http://maven.apache.org/POM/4.0.0">
-
- <parent>
- <groupId>incubator-servicemix</groupId>
- <artifactId>servicemix</artifactId>
- <version>3.0-SNAPSHOT</version>
- <relativePath>../pom.xml</relativePath>
- </parent>
-
- <modelVersion>4.0.0</modelVersion>
- <groupId>incubator-servicemix</groupId>
- <artifactId>servicemix-http</artifactId>
- <packaging>jbi-component</packaging>
- <name>ServiceMix :: HTTP</name>
- <description>HTTP Binding Component</description>
- <dependencies>
-
- <dependency>
- <groupId>incubator-servicemix</groupId>
- <artifactId>servicemix-common</artifactId>
- </dependency>
- <dependency>
- <groupId>incubator-servicemix</groupId>
- <artifactId>servicemix-soap</artifactId>
- </dependency>
- <dependency>
- <groupId>org.apache.geronimo.specs</groupId>
- <artifactId>geronimo-servlet_2.4_spec</artifactId>
- </dependency>
- <dependency>
- <groupId>axis2</groupId>
- <artifactId>axis2</artifactId>
- <version>0.93</version>
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring</artifactId>
- </dependency>
- <dependency>
- <groupId>commons-httpclient</groupId>
- <artifactId>commons-httpclient</artifactId>
- </dependency>
- <dependency>
- <groupId>jetty</groupId>
- <artifactId>jetty</artifactId>
- </dependency>
- <dependency>
- <groupId>wsdl4j</groupId>
- <artifactId>wsdl4j</artifactId>
- </dependency>
- <dependency>
- <groupId>incubator-servicemix</groupId>
- <artifactId>servicemix-core</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>incubator-servicemix</groupId>
- <artifactId>servicemix-jbi</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>incubator-servicemix</groupId>
- <artifactId>servicemix-components</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.xbean</groupId>
- <artifactId>xbean-spring</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>commons-logging</groupId>
- <artifactId>commons-logging</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>log4j</groupId>
- <artifactId>log4j</artifactId>
- <scope>compile</scope>
- </dependency>
- </dependencies>
-
- <build>
- <resources>
- <resource>
- <directory>src/main/resources</directory>
- <includes>
- <include>**/*.properties</include>
- <include>**/*.xml</include>
- <include>**/*</include>
- </includes>
- </resource>
- <resource>
- <directory>target/generated</directory>
- <includes>
- <include>**/*</include>
- </includes>
- </resource>
- </resources>
- <plugins>
- <plugin>
- <artifactId>maven-antrun-plugin</artifactId>
- <executions>
- <execution>
- <phase>generate-resources</phase>
- <configuration>
- <tasks>
- <taskdef classname="org.apache.xbean.spring.generator.MappingGeneratorTask" name="mapping">
- <classpath>
- <pathelement path="${basedir}/target/classes"></pathelement>
- <path refid="maven.test.classpath"></path>
- </classpath>
- </taskdef>
- <mapping destFile="${basedir}/target/servicemix-http-${version}.xsd" namespace="http://servicemix.apache.org/http/1.0"
- srcdir="${basedir}/src/main/java" metaInfDir="${basedir}/target/generated/"/>
- </tasks>
- </configuration>
- <goals>
- <goal>run</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.apache.servicemix.plugins</groupId>
- <artifactId>maven2-jbi-plugin</artifactId>
- <configuration>
- <type>service-engine</type>
- <bootstrap>org.apache.servicemix.http.HttpBootstrap</bootstrap>
- <component>org.apache.servicemix.http.HttpComponent</component>
- </configuration>
- </plugin>
- </plugins>
- </build>
-</project>
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+ Copyright 2005 The Apache Software Foundation
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<!-- $Rev: 356052 $ $Date: 2005-12-11 14:41:20 -0800 (dim., 11 déc. 2005) $ -->
+<project
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0">
+
+ <parent>
+ <groupId>incubator-servicemix</groupId>
+ <artifactId>servicemix</artifactId>
+ <version>3.0-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>incubator-servicemix</groupId>
+ <artifactId>servicemix-http</artifactId>
+ <packaging>jbi-component</packaging>
+ <name>ServiceMix :: HTTP</name>
+ <description>HTTP Binding Component</description>
+ <dependencies>
+
+ <dependency>
+ <groupId>incubator-servicemix</groupId>
+ <artifactId>servicemix-common</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>incubator-servicemix</groupId>
+ <artifactId>servicemix-soap</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.geronimo.specs</groupId>
+ <artifactId>geronimo-servlet_2.4_spec</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>axis2</groupId>
+ <artifactId>axis2</artifactId>
+ <version>0.93</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>commons-httpclient</groupId>
+ <artifactId>commons-httpclient</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>jetty</groupId>
+ <artifactId>jetty</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>wsdl4j</groupId>
+ <artifactId>wsdl4j</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>incubator-servicemix</groupId>
+ <artifactId>servicemix-core</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>incubator-servicemix</groupId>
+ <artifactId>servicemix-jbi</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>incubator-servicemix</groupId>
+ <artifactId>servicemix-components</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.xbean</groupId>
+ <artifactId>xbean-spring</artifactId>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ <scope>compile</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <resources>
+ <resource>
+ <directory>src/main/resources</directory>
+ <includes>
+ <include>**/*.properties</include>
+ <include>**/*.xml</include>
+ <include>**/*</include>
+ </includes>
+ </resource>
+ <resource>
+ <directory>target/generated</directory>
+ <includes>
+ <include>**/*</include>
+ </includes>
+ </resource>
+ </resources>
+ <plugins>
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <phase>generate-resources</phase>
+ <configuration>
+ <tasks>
+ <taskdef classname="org.apache.xbean.spring.generator.MappingGeneratorTask" name="mapping">
+ <classpath>
+ <pathelement path="${basedir}/target/classes"></pathelement>
+ <path refid="maven.test.classpath"></path>
+ </classpath>
+ </taskdef>
+ <mapping destFile="${basedir}/target/servicemix-http-${version}.xsd" namespace="http://servicemix.apache.org/http/1.0"
+ srcdir="${basedir}/src/main/java" metaInfDir="${basedir}/target/generated/"/>
+ </tasks>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.servicemix.plugins</groupId>
+ <artifactId>maven2-jbi-plugin</artifactId>
+ <configuration>
+ <type>service-engine</type>
+ <bootstrap>org.apache.servicemix.http.HttpBootstrap</bootstrap>
+ <component>org.apache.servicemix.http.HttpComponent</component>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
Propchange: incubator/servicemix/trunk/servicemix-http/pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/servicemix/trunk/servicemix-http/project.properties
------------------------------------------------------------------------------
svn:eol-style = native
Modified: incubator/servicemix/trunk/servicemix-http/project.xml
URL: http://svn.apache.org/viewcvs/incubator/servicemix/trunk/servicemix-http/project.xml?rev=379627&r1=379626&r2=379627&view=diff
==============================================================================
--- incubator/servicemix/trunk/servicemix-http/project.xml (original)
+++ incubator/servicemix/trunk/servicemix-http/project.xml Tue Feb 21 15:40:05 2006
@@ -1,321 +1,321 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-
-<!--
-
- Copyright 2005 The Apache Software Foundation
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
--->
-
-<!DOCTYPE project>
-<project>
- <pomVersion>3</pomVersion>
- <extend>${basedir}/../etc/project.xml</extend>
-
- <name>ServiceMix :: Http</name>
- <id>servicemix-http</id>
- <shortDescription>Http binding component</shortDescription>
- <description>Http binding component</description>
-
- <package>org.apache.servicemix.http</package>
- <packageGroups>
- <packageGroup>
- <title>Http binding component</title>
- <packages>org.apache.servicemix.http</packages>
- </packageGroup>
- </packageGroups>
-
- <!-- ============ -->
- <!-- Dependencies -->
- <!-- ============ -->
- <dependencies>
-
- <dependency>
- <groupId>${pom.groupId}</groupId>
- <artifactId>maven-jbi-plugin</artifactId>
- <version>${pom.currentVersion}</version>
- <type>plugin</type>
- </dependency>
-
- <!-- JBI bundled dependencies -->
- <dependency>
- <groupId>${pom.groupId}</groupId>
- <artifactId>servicemix-common</artifactId>
- <version>${pom.currentVersion}</version>
- <properties>
- <eclipse.dependency>true</eclipse.dependency>
- <jbi.bundle>true</jbi.bundle>
- <jbi.bootstrap>true</jbi.bootstrap>
- </properties>
- </dependency>
- <dependency>
- <groupId>${pom.groupId}</groupId>
- <artifactId>servicemix-soap</artifactId>
- <version>${pom.currentVersion}</version>
- <properties>
- <eclipse.dependency>true</eclipse.dependency>
- <jbi.bundle>true</jbi.bundle>
- </properties>
- </dependency>
- <dependency>
- <groupId>commons-logging</groupId>
- <artifactId>commons-logging</artifactId>
- <version>${commons_logging_version}</version>
- <properties>
- </properties>
- </dependency>
- <dependency>
- <groupId>backport-util-concurrent</groupId>
- <artifactId>backport-util-concurrent</artifactId>
- <version>${backport_util_concurrent_version}</version>
- <properties>
- </properties>
- </dependency>
- <dependency>
- <groupId>wsdl4j</groupId>
- <artifactId>wsdl4j</artifactId>
- <version>${wsdl4j_version}</version>
- <properties>
- </properties>
- </dependency>
- <dependency>
- <groupId>jetty</groupId>
- <artifactId>jetty</artifactId>
- <version>${jetty_version}</version>
- <properties>
- <jbi.bundle>true</jbi.bundle>
- </properties>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-jcl</artifactId>
- <version>${slf4j_jcl_version}</version>
- <properties>
- <jbi.bundle>true</jbi.bundle>
- </properties>
- </dependency>
- <dependency>
- <id>commons-httpclient</id>
- <version>${commons_httpclient_version}</version>
- <properties>
- <jbi.bundle>true</jbi.bundle>
- </properties>
- </dependency>
- <dependency>
- <id>commons-codec</id>
- <version>${commons_codec_version}</version>
- <properties>
- <jbi.bundle>true</jbi.bundle>
- </properties>
- </dependency>
- <dependency>
- <groupId>servicemix</groupId>
- <artifactId>xfire-all</artifactId>
- <version>${xfire_version}</version>
- <properties>
- </properties>
- </dependency>
- <dependency>
- <groupId>org.apache.xbean</groupId>
- <artifactId>xbean-spring</artifactId>
- <version>${xbean_version}</version>
- <properties>
- </properties>
- </dependency>
- <dependency>
- <groupId>org.apache.xbean</groupId>
- <artifactId>xbean-server</artifactId>
- <version>${xbean_version}</version>
- <properties>
- </properties>
- </dependency>
- <dependency>
- <groupId>org.apache.xbean</groupId>
- <artifactId>xbean-kernel</artifactId>
- <version>${xbean_version}</version>
- <properties>
- </properties>
- </dependency>
-
- <!-- Provided dependencies -->
- <dependency>
- <groupId>${pom.groupId}</groupId>
- <artifactId>servicemix-jbi</artifactId>
- <version>${pom.currentVersion}</version>
- <properties>
- <eclipse.dependency>true</eclipse.dependency>
- </properties>
- </dependency>
- <dependency>
- <groupId>org.apache.geronimo.specs</groupId>
- <artifactId>geronimo-j2ee-connector_1.5_spec</artifactId>
- <version>${geronimo_spec_j2ee_connector_version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.geronimo.specs</groupId>
- <artifactId>geronimo-activation_1.0.2_spec</artifactId>
- <version>${geronimo_spec_activation_version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.geronimo.specs</groupId>
- <artifactId>geronimo-jta_1.0.1B_spec</artifactId>
- <version>${geronimo_spec_jta_version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.geronimo.specs</groupId>
- <artifactId>geronimo-servlet_2.4_spec</artifactId>
- <version>${geronimo_spec_servlet_version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.geronimo.specs</groupId>
- <artifactId>geronimo-javamail_1.3.1_spec</artifactId>
- <version>${geronimo_spec_javamail_version}</version>
- </dependency>
- <dependency>
- <groupId>geronimo</groupId>
- <artifactId>geronimo-activation</artifactId>
- <version>${geronimo_version}</version>
- </dependency>
- <dependency>
- <groupId>xml-apis</groupId>
- <artifactId>xml-apis</artifactId>
- <version>${xml_apis_version}</version>
- </dependency>
- <dependency>
- <groupId>activeio</groupId>
- <artifactId>activeio</artifactId>
- <version>${activeio_version}</version>
- </dependency>
-
- <!-- Testing only -->
- <dependency>
- <groupId>${pom.groupId}</groupId>
- <artifactId>servicemix-core</artifactId>
- <version>${pom.currentVersion}</version>
- <properties>
- <eclipse.dependency>true</eclipse.dependency>
- </properties>
- </dependency>
- <dependency>
- <groupId>${pom.groupId}</groupId>
- <artifactId>servicemix-components</artifactId>
- <version>${pom.currentVersion}</version>
- <properties>
- <eclipse.dependency>true</eclipse.dependency>
- </properties>
- </dependency>
- <dependency>
- <groupId>commons-beanutils</groupId>
- <artifactId>commons-beanutils</artifactId>
- <version>${commons_beanutils_version}</version>
- </dependency>
- <dependency>
- <groupId>springframework</groupId>
- <artifactId>spring</artifactId>
- <version>${spring_version}</version>
- </dependency>
- <dependency>
- <groupId>incubator-activemq</groupId>
- <artifactId>activemq-core</artifactId>
- <version>${activemq_version}</version>
- </dependency>
- <dependency>
- <groupId>concurrent</groupId>
- <artifactId>concurrent</artifactId>
- <version>${concurrent_version}</version>
- </dependency>
- <dependency>
- <groupId>jencks</groupId>
- <artifactId>jencks-all</artifactId>
- <version>${jencks_version}</version>
- </dependency>
- <dependency>
- <groupId>mx4j</groupId>
- <artifactId>mx4j</artifactId>
- <version>${mx4j_version}</version>
- </dependency>
- <dependency>
- <groupId>woodstox</groupId>
- <artifactId>wstx-asl</artifactId>
- <version>${woodstox_version}</version>
- <properties>
- <scope>test</scope>
- </properties>
- </dependency>
- <dependency>
- <id>stax+api</id>
- <version>${stax_api_version}</version>
- <properties>
- <scope>test</scope>
- </properties>
- </dependency>
- <dependency>
- <groupId>servicemix</groupId>
- <artifactId>stax-utils</artifactId>
- <version>${stax_utils_version}</version>
- <properties>
- <scope>test</scope>
- </properties>
- </dependency>
- <dependency>
- <id>xalan</id>
- <version>${xalan_version}</version>
- <properties>
- <scope>test</scope>
- </properties>
- </dependency>
- <dependency>
- <groupId>annogen</groupId>
- <artifactId>annogen</artifactId>
- <version>${annogen_version}</version>
- <properties>
- <scope>compile</scope>
- </properties>
- </dependency>
- <dependency>
- <groupId>qdox</groupId>
- <artifactId>qdox</artifactId>
- <version>${qdox_version}</version>
- <properties>
- <scope>compile</scope>
- </properties>
- </dependency>
- </dependencies>
-
- <build>
- <unitTest>
- <includes>
- <include>**/*Test.*</include>
- </includes>
- <excludes>
- <!-- http://jira.activemq.org/jira/browse/AMQ-572 -->
- <exclude>**/ServerManagerTest.*</exclude>
- </excludes>
- </unitTest>
- <resources>
- <resource>
- <directory>src/main/resources</directory>
- <includes>
- <include>**/*</include>
- </includes>
- </resource>
- <resource>
- <directory>target/generated</directory>
- <includes>
- <include>**/*</include>
- </includes>
- </resource>
- </resources>
- </build>
-</project>
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<!--
+
+ Copyright 2005 The Apache Software Foundation
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+
+<!DOCTYPE project>
+<project>
+ <pomVersion>3</pomVersion>
+ <extend>${basedir}/../etc/project.xml</extend>
+
+ <name>ServiceMix :: Http</name>
+ <id>servicemix-http</id>
+ <shortDescription>Http binding component</shortDescription>
+ <description>Http binding component</description>
+
+ <package>org.apache.servicemix.http</package>
+ <packageGroups>
+ <packageGroup>
+ <title>Http binding component</title>
+ <packages>org.apache.servicemix.http</packages>
+ </packageGroup>
+ </packageGroups>
+
+ <!-- ============ -->
+ <!-- Dependencies -->
+ <!-- ============ -->
+ <dependencies>
+
+ <dependency>
+ <groupId>${pom.groupId}</groupId>
+ <artifactId>maven-jbi-plugin</artifactId>
+ <version>${pom.currentVersion}</version>
+ <type>plugin</type>
+ </dependency>
+
+ <!-- JBI bundled dependencies -->
+ <dependency>
+ <groupId>${pom.groupId}</groupId>
+ <artifactId>servicemix-common</artifactId>
+ <version>${pom.currentVersion}</version>
+ <properties>
+ <eclipse.dependency>true</eclipse.dependency>
+ <jbi.bundle>true</jbi.bundle>
+ <jbi.bootstrap>true</jbi.bootstrap>
+ </properties>
+ </dependency>
+ <dependency>
+ <groupId>${pom.groupId}</groupId>
+ <artifactId>servicemix-soap</artifactId>
+ <version>${pom.currentVersion}</version>
+ <properties>
+ <eclipse.dependency>true</eclipse.dependency>
+ <jbi.bundle>true</jbi.bundle>
+ </properties>
+ </dependency>
+ <dependency>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ <version>${commons_logging_version}</version>
+ <properties>
+ </properties>
+ </dependency>
+ <dependency>
+ <groupId>backport-util-concurrent</groupId>
+ <artifactId>backport-util-concurrent</artifactId>
+ <version>${backport_util_concurrent_version}</version>
+ <properties>
+ </properties>
+ </dependency>
+ <dependency>
+ <groupId>wsdl4j</groupId>
+ <artifactId>wsdl4j</artifactId>
+ <version>${wsdl4j_version}</version>
+ <properties>
+ </properties>
+ </dependency>
+ <dependency>
+ <groupId>jetty</groupId>
+ <artifactId>jetty</artifactId>
+ <version>${jetty_version}</version>
+ <properties>
+ <jbi.bundle>true</jbi.bundle>
+ </properties>
+ </dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-jcl</artifactId>
+ <version>${slf4j_jcl_version}</version>
+ <properties>
+ <jbi.bundle>true</jbi.bundle>
+ </properties>
+ </dependency>
+ <dependency>
+ <id>commons-httpclient</id>
+ <version>${commons_httpclient_version}</version>
+ <properties>
+ <jbi.bundle>true</jbi.bundle>
+ </properties>
+ </dependency>
+ <dependency>
+ <id>commons-codec</id>
+ <version>${commons_codec_version}</version>
+ <properties>
+ <jbi.bundle>true</jbi.bundle>
+ </properties>
+ </dependency>
+ <dependency>
+ <groupId>servicemix</groupId>
+ <artifactId>xfire-all</artifactId>
+ <version>${xfire_version}</version>
+ <properties>
+ </properties>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.xbean</groupId>
+ <artifactId>xbean-spring</artifactId>
+ <version>${xbean_version}</version>
+ <properties>
+ </properties>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.xbean</groupId>
+ <artifactId>xbean-server</artifactId>
+ <version>${xbean_version}</version>
+ <properties>
+ </properties>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.xbean</groupId>
+ <artifactId>xbean-kernel</artifactId>
+ <version>${xbean_version}</version>
+ <properties>
+ </properties>
+ </dependency>
+
+ <!-- Provided dependencies -->
+ <dependency>
+ <groupId>${pom.groupId}</groupId>
+ <artifactId>servicemix-jbi</artifactId>
+ <version>${pom.currentVersion}</version>
+ <properties>
+ <eclipse.dependency>true</eclipse.dependency>
+ </properties>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.geronimo.specs</groupId>
+ <artifactId>geronimo-j2ee-connector_1.5_spec</artifactId>
+ <version>${geronimo_spec_j2ee_connector_version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.geronimo.specs</groupId>
+ <artifactId>geronimo-activation_1.0.2_spec</artifactId>
+ <version>${geronimo_spec_activation_version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.geronimo.specs</groupId>
+ <artifactId>geronimo-jta_1.0.1B_spec</artifactId>
+ <version>${geronimo_spec_jta_version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.geronimo.specs</groupId>
+ <artifactId>geronimo-servlet_2.4_spec</artifactId>
+ <version>${geronimo_spec_servlet_version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.geronimo.specs</groupId>
+ <artifactId>geronimo-javamail_1.3.1_spec</artifactId>
+ <version>${geronimo_spec_javamail_version}</version>
+ </dependency>
+ <dependency>
+ <groupId>geronimo</groupId>
+ <artifactId>geronimo-activation</artifactId>
+ <version>${geronimo_version}</version>
+ </dependency>
+ <dependency>
+ <groupId>xml-apis</groupId>
+ <artifactId>xml-apis</artifactId>
+ <version>${xml_apis_version}</version>
+ </dependency>
+ <dependency>
+ <groupId>activeio</groupId>
+ <artifactId>activeio</artifactId>
+ <version>${activeio_version}</version>
+ </dependency>
+
+ <!-- Testing only -->
+ <dependency>
+ <groupId>${pom.groupId}</groupId>
+ <artifactId>servicemix-core</artifactId>
+ <version>${pom.currentVersion}</version>
+ <properties>
+ <eclipse.dependency>true</eclipse.dependency>
+ </properties>
+ </dependency>
+ <dependency>
+ <groupId>${pom.groupId}</groupId>
+ <artifactId>servicemix-components</artifactId>
+ <version>${pom.currentVersion}</version>
+ <properties>
+ <eclipse.dependency>true</eclipse.dependency>
+ </properties>
+ </dependency>
+ <dependency>
+ <groupId>commons-beanutils</groupId>
+ <artifactId>commons-beanutils</artifactId>
+ <version>${commons_beanutils_version}</version>
+ </dependency>
+ <dependency>
+ <groupId>springframework</groupId>
+ <artifactId>spring</artifactId>
+ <version>${spring_version}</version>
+ </dependency>
+ <dependency>
+ <groupId>incubator-activemq</groupId>
+ <artifactId>activemq-core</artifactId>
+ <version>${activemq_version}</version>
+ </dependency>
+ <dependency>
+ <groupId>concurrent</groupId>
+ <artifactId>concurrent</artifactId>
+ <version>${concurrent_version}</version>
+ </dependency>
+ <dependency>
+ <groupId>jencks</groupId>
+ <artifactId>jencks-all</artifactId>
+ <version>${jencks_version}</version>
+ </dependency>
+ <dependency>
+ <groupId>mx4j</groupId>
+ <artifactId>mx4j</artifactId>
+ <version>${mx4j_version}</version>
+ </dependency>
+ <dependency>
+ <groupId>woodstox</groupId>
+ <artifactId>wstx-asl</artifactId>
+ <version>${woodstox_version}</version>
+ <properties>
+ <scope>test</scope>
+ </properties>
+ </dependency>
+ <dependency>
+ <id>stax+api</id>
+ <version>${stax_api_version}</version>
+ <properties>
+ <scope>test</scope>
+ </properties>
+ </dependency>
+ <dependency>
+ <groupId>servicemix</groupId>
+ <artifactId>stax-utils</artifactId>
+ <version>${stax_utils_version}</version>
+ <properties>
+ <scope>test</scope>
+ </properties>
+ </dependency>
+ <dependency>
+ <id>xalan</id>
+ <version>${xalan_version}</version>
+ <properties>
+ <scope>test</scope>
+ </properties>
+ </dependency>
+ <dependency>
+ <groupId>annogen</groupId>
+ <artifactId>annogen</artifactId>
+ <version>${annogen_version}</version>
+ <properties>
+ <scope>compile</scope>
+ </properties>
+ </dependency>
+ <dependency>
+ <groupId>qdox</groupId>
+ <artifactId>qdox</artifactId>
+ <version>${qdox_version}</version>
+ <properties>
+ <scope>compile</scope>
+ </properties>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <unitTest>
+ <includes>
+ <include>**/*Test.*</include>
+ </includes>
+ <excludes>
+ <!-- http://jira.activemq.org/jira/browse/AMQ-572 -->
+ <exclude>**/ServerManagerTest.*</exclude>
+ </excludes>
+ </unitTest>
+ <resources>
+ <resource>
+ <directory>src/main/resources</directory>
+ <includes>
+ <include>**/*</include>
+ </includes>
+ </resource>
+ <resource>
+ <directory>target/generated</directory>
+ <includes>
+ <include>**/*</include>
+ </includes>
+ </resource>
+ </resources>
+ </build>
+</project>
Propchange: incubator/servicemix/trunk/servicemix-http/project.xml
------------------------------------------------------------------------------
svn:eol-style = native
Modified: incubator/servicemix/trunk/servicemix-http/src/main/java/org/apache/servicemix/http/HttpExternalEndpoint.java
URL: http://svn.apache.org/viewcvs/incubator/servicemix/trunk/servicemix-http/src/main/java/org/apache/servicemix/http/HttpExternalEndpoint.java?rev=379627&r1=379626&r2=379627&view=diff
==============================================================================
--- incubator/servicemix/trunk/servicemix-http/src/main/java/org/apache/servicemix/http/HttpExternalEndpoint.java (original)
+++ incubator/servicemix/trunk/servicemix-http/src/main/java/org/apache/servicemix/http/HttpExternalEndpoint.java Tue Feb 21 15:40:05 2006
@@ -1,63 +1,63 @@
-/*
- * Copyright 2005-2006 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.servicemix.http;
-
-import javax.jbi.servicedesc.ServiceEndpoint;
-import javax.xml.namespace.QName;
-import javax.xml.parsers.DocumentBuilderFactory;
-
-import org.w3c.dom.Document;
-import org.w3c.dom.DocumentFragment;
-import org.w3c.dom.Element;
-import org.w3c.dom.Text;
-
-public class HttpExternalEndpoint implements ServiceEndpoint {
-
- private HttpEndpoint endpoint;
-
- public HttpExternalEndpoint(HttpEndpoint endpoint) {
- this.endpoint = endpoint;
- }
-
- public DocumentFragment getAsReference(QName operationName) {
- try {
- DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
- dbf.setNamespaceAware(true);
- Document doc = dbf.newDocumentBuilder().newDocument();
- DocumentFragment df = doc.createDocumentFragment();
- Element e = doc.createElementNS(HttpResolvedEndpoint.EPR_URI, HttpResolvedEndpoint.EPR_NAME);
- Text t = doc.createTextNode(endpoint.getLocationURI());
- e.appendChild(t);
- df.appendChild(e);
- return df;
- } catch (Exception e) {
- throw new RuntimeException("Could not create reference", e);
- }
- }
-
- public String getEndpointName() {
- return endpoint.getEndpoint();
- }
-
- public QName[] getInterfaces() {
- return null;
- }
-
- public QName getServiceName() {
- return endpoint.getService();
- }
-
-}
+/*
+ * Copyright 2005-2006 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.servicemix.http;
+
+import javax.jbi.servicedesc.ServiceEndpoint;
+import javax.xml.namespace.QName;
+import javax.xml.parsers.DocumentBuilderFactory;
+
+import org.w3c.dom.Document;
+import org.w3c.dom.DocumentFragment;
+import org.w3c.dom.Element;
+import org.w3c.dom.Text;
+
+public class HttpExternalEndpoint implements ServiceEndpoint {
+
+ private HttpEndpoint endpoint;
+
+ public HttpExternalEndpoint(HttpEndpoint endpoint) {
+ this.endpoint = endpoint;
+ }
+
+ public DocumentFragment getAsReference(QName operationName) {
+ try {
+ DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
+ dbf.setNamespaceAware(true);
+ Document doc = dbf.newDocumentBuilder().newDocument();
+ DocumentFragment df = doc.createDocumentFragment();
+ Element e = doc.createElementNS(HttpResolvedEndpoint.EPR_URI, HttpResolvedEndpoint.EPR_NAME);
+ Text t = doc.createTextNode(endpoint.getLocationURI());
+ e.appendChild(t);
+ df.appendChild(e);
+ return df;
+ } catch (Exception e) {
+ throw new RuntimeException("Could not create reference", e);
+ }
+ }
+
+ public String getEndpointName() {
+ return endpoint.getEndpoint();
+ }
+
+ public QName[] getInterfaces() {
+ return null;
+ }
+
+ public QName getServiceName() {
+ return endpoint.getService();
+ }
+
+}
Propchange: incubator/servicemix/trunk/servicemix-http/src/main/java/org/apache/servicemix/http/HttpExternalEndpoint.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: incubator/servicemix/trunk/servicemix-http/src/main/java/org/apache/servicemix/http/HttpResolvedEndpoint.java
URL: http://svn.apache.org/viewcvs/incubator/servicemix/trunk/servicemix-http/src/main/java/org/apache/servicemix/http/HttpResolvedEndpoint.java?rev=379627&r1=379626&r2=379627&view=diff
==============================================================================
--- incubator/servicemix/trunk/servicemix-http/src/main/java/org/apache/servicemix/http/HttpResolvedEndpoint.java (original)
+++ incubator/servicemix/trunk/servicemix-http/src/main/java/org/apache/servicemix/http/HttpResolvedEndpoint.java Tue Feb 21 15:40:05 2006
@@ -1,51 +1,51 @@
-/*
- * Copyright 2005-2006 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.servicemix.http;
-
-import javax.jbi.servicedesc.ServiceEndpoint;
-import javax.xml.namespace.QName;
-
-import org.w3c.dom.DocumentFragment;
-
-public class HttpResolvedEndpoint implements ServiceEndpoint {
-
- public final static String EPR_URI = "urn:servicemix:http";
- public final static String EPR_NAME = "epr";
-
- private DocumentFragment reference;
- private String epName;
-
- public HttpResolvedEndpoint(DocumentFragment epr, String epName) {
- this.reference = epr;
- }
-
- public DocumentFragment getAsReference(QName operationName) {
- return reference;
- }
-
- public String getEndpointName() {
- return epName;
- }
-
- public QName[] getInterfaces() {
- return null;
- }
-
- public QName getServiceName() {
- return new QName("urn:servicemix:http", "HttpComponent");
- }
-
+/*
+ * Copyright 2005-2006 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.servicemix.http;
+
+import javax.jbi.servicedesc.ServiceEndpoint;
+import javax.xml.namespace.QName;
+
+import org.w3c.dom.DocumentFragment;
+
+public class HttpResolvedEndpoint implements ServiceEndpoint {
+
+ public final static String EPR_URI = "urn:servicemix:http";
+ public final static String EPR_NAME = "epr";
+
+ private DocumentFragment reference;
+ private String epName;
+
+ public HttpResolvedEndpoint(DocumentFragment epr, String epName) {
+ this.reference = epr;
+ }
+
+ public DocumentFragment getAsReference(QName operationName) {
+ return reference;
+ }
+
+ public String getEndpointName() {
+ return epName;
+ }
+
+ public QName[] getInterfaces() {
+ return null;
+ }
+
+ public QName getServiceName() {
+ return new QName("urn:servicemix:http", "HttpComponent");
+ }
+
}
Propchange: incubator/servicemix/trunk/servicemix-http/src/main/java/org/apache/servicemix/http/HttpResolvedEndpoint.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: incubator/servicemix/trunk/servicemix-http/src/main/java/org/apache/servicemix/http/processors/ConsumerProcessor.java
URL: http://svn.apache.org/viewcvs/incubator/servicemix/trunk/servicemix-http/src/main/java/org/apache/servicemix/http/processors/ConsumerProcessor.java?rev=379627&r1=379626&r2=379627&view=diff
==============================================================================
--- incubator/servicemix/trunk/servicemix-http/src/main/java/org/apache/servicemix/http/processors/ConsumerProcessor.java (original)
+++ incubator/servicemix/trunk/servicemix-http/src/main/java/org/apache/servicemix/http/processors/ConsumerProcessor.java Tue Feb 21 15:40:05 2006
@@ -1,193 +1,193 @@
-/*
- * Copyright 2005-2006 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.servicemix.http.processors;
-
-import java.net.URI;
-import java.util.Enumeration;
-import java.util.HashMap;
-import java.util.Map;
-
-import javax.jbi.component.ComponentContext;
-import javax.jbi.messaging.DeliveryChannel;
-import javax.jbi.messaging.ExchangeStatus;
-import javax.jbi.messaging.MessageExchange;
-import javax.jbi.messaging.NormalizedMessage;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.xml.namespace.QName;
-
-import org.apache.servicemix.JbiConstants;
-import org.apache.servicemix.common.BaseLifeCycle;
-import org.apache.servicemix.common.ExchangeProcessor;
-import org.apache.servicemix.http.HttpEndpoint;
-import org.apache.servicemix.http.HttpLifeCycle;
-import org.apache.servicemix.http.HttpProcessor;
-import org.apache.servicemix.http.ServerManager;
-import org.apache.servicemix.soap.SoapFault;
-import org.apache.servicemix.soap.SoapHelper;
-import org.apache.servicemix.soap.handlers.AddressingInHandler;
-import org.apache.servicemix.soap.marshalers.JBIMarshaler;
-import org.apache.servicemix.soap.marshalers.SoapMarshaler;
-import org.apache.servicemix.soap.marshalers.SoapMessage;
-import org.mortbay.jetty.RetryRequest;
-import org.mortbay.jetty.handler.ContextHandler;
-import org.mortbay.util.ajax.Continuation;
-import org.mortbay.util.ajax.ContinuationSupport;
-
-import edu.emory.mathcs.backport.java.util.concurrent.ConcurrentHashMap;
-
-public class ConsumerProcessor implements ExchangeProcessor, HttpProcessor {
-
- public static final URI IN_ONLY = URI.create("http://www.w3.org/2004/08/wsdl/in-only");
- public static final URI IN_OUT = URI.create("http://www.w3.org/2004/08/wsdl/in-out");
- public static final URI ROBUST_IN_ONLY = URI.create("http://www.w3.org/2004/08/wsdl/robust-in-only");
-
- protected HttpEndpoint endpoint;
- protected ContextHandler httpContext;
- protected ComponentContext context;
- protected DeliveryChannel channel;
- protected SoapMarshaler soapMarshaler;
- protected JBIMarshaler jbiMarshaler;
- protected SoapHelper soapHelper;
- protected Map locks;
-
- public ConsumerProcessor(HttpEndpoint endpoint) {
- this.endpoint = endpoint;
- this.soapMarshaler = new SoapMarshaler(endpoint.isSoap());
- this.soapHelper = new SoapHelper(endpoint);
- this.soapHelper.addPolicy(new AddressingInHandler());
- this.jbiMarshaler = new JBIMarshaler();
- this.locks = new ConcurrentHashMap();
- }
-
- public void process(MessageExchange exchange) throws Exception {
- Continuation cont = (Continuation) locks.remove(exchange.getExchangeId());
- if (cont != null) {
- //System.err.println("Notifying: " + exchange.getExchangeId());
- cont.resume();
- } else {
- throw new IllegalStateException("Exchange not found");
- }
- }
-
- public void start() throws Exception {
- Thread.currentThread().setContextClassLoader(getClass().getClassLoader());
- String url = endpoint.getLocationURI();
- httpContext = getServerManager().createContext(url, this);
- httpContext.start();
- context = endpoint.getServiceUnit().getComponent().getComponentContext();
- channel = context.getDeliveryChannel();
- }
-
- public void stop() throws Exception {
- httpContext.stop();
- getServerManager().remove(httpContext);
- }
-
- public void process(HttpServletRequest request, HttpServletResponse response) throws Exception {
- if (!"POST".equals(request.getMethod())) {
- throw new UnsupportedOperationException(request.getMethod() + " not supported");
- }
- QName envelopeName = null;
- try {
- // Not giving a specific mutex will synchronize on the contination itself
- Continuation cont = ContinuationSupport.getContinuation(request, null);
- MessageExchange exchange;
- // If the continuation is not a retry
- if (!cont.isPending()) {
- SoapMessage message = soapMarshaler.createReader().read(request.getInputStream(),
- request.getHeader("Content-Type"));
- exchange = soapHelper.createExchange(message);
- //System.err.println("Handling: " + exchange.getExchangeId());
- NormalizedMessage inMessage = exchange.getMessage("in");
- inMessage.setProperty(JbiConstants.PROTOCOL_HEADERS, getHeaders(request));
- locks.put(exchange.getExchangeId(), cont);
- request.setAttribute(MessageExchange.class.getName(), exchange);
- //System.err.println("Sending: " + exchange.getExchangeId());
- ((BaseLifeCycle) endpoint.getServiceUnit().getComponent().getLifeCycle()).sendConsumerExchange(exchange, this);
- // TODO: make this timeout configurable
- boolean result = cont.suspend(1000 * 60); // 60 s
- if (!result) {
- throw new Exception("Error sending exchange: aborted");
- }
- //System.err.println("Continuing: " + exchange.getExchangeId());
- } else {
- exchange = (MessageExchange) request.getAttribute(MessageExchange.class.getName());
- request.removeAttribute(MessageExchange.class.getName());
- boolean result = cont.suspend(0);
- // Check if this is a timeout
- if (exchange == null) {
- throw new IllegalStateException("Exchange not found");
- }
- //System.err.println("Processing: " + exchange.getExchangeId());
- if (!result) {
- throw new Exception("Timeout");
- }
- }
- if (exchange.getStatus() == ExchangeStatus.ERROR) {
- exchange.setStatus(ExchangeStatus.DONE);
- channel.send(exchange);
- if (exchange.getError() != null) {
- throw new Exception(exchange.getError());
- } else if (exchange.getFault() != null) {
- throw new SoapFault(SoapFault.RECEIVER, null, null, null, exchange.getFault().getContent());
- } else {
- throw new Exception("Unkown Error");
- }
- } else if (exchange.getStatus() == ExchangeStatus.ACTIVE) {
- NormalizedMessage outMsg = exchange.getMessage("out");
- if (outMsg != null) {
- SoapMessage out = new SoapMessage();
- jbiMarshaler.fromNMS(out, outMsg);
- soapMarshaler.createWriter(out).write(response.getOutputStream());
- }
- exchange.setStatus(ExchangeStatus.DONE);
- channel.send(exchange);
- }
- } catch (SoapFault fault) {
- if (SoapFault.SENDER.equals(fault.getCode())) {
- response.setStatus(HttpServletResponse.SC_BAD_REQUEST);
- } else {
- response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
- }
- SoapMessage soapFault = new SoapMessage();
- soapFault.setFault(fault);
- soapFault.setEnvelopeName(envelopeName);
- soapMarshaler.createWriter(soapFault).write(response.getOutputStream());
- } catch (RetryRequest e) {
- throw e;
- } catch (Exception e) {
- throw e;
- }
- }
-
- protected Map getHeaders(HttpServletRequest request) {
- Map headers = new HashMap();
- Enumeration enumeration = request.getHeaderNames();
- while (enumeration.hasMoreElements()) {
- String name = (String) enumeration.nextElement();
- String value = request.getHeader(name);
- headers.put(name, value);
- }
- return headers;
- }
-
- protected ServerManager getServerManager() {
- HttpLifeCycle lf = (HttpLifeCycle) endpoint.getServiceUnit().getComponent().getLifeCycle();
- return lf.getServer();
- }
-
-}
+/*
+ * Copyright 2005-2006 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.servicemix.http.processors;
+
+import java.net.URI;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.Map;
+
+import javax.jbi.component.ComponentContext;
+import javax.jbi.messaging.DeliveryChannel;
+import javax.jbi.messaging.ExchangeStatus;
+import javax.jbi.messaging.MessageExchange;
+import javax.jbi.messaging.NormalizedMessage;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.xml.namespace.QName;
+
+import org.apache.servicemix.JbiConstants;
+import org.apache.servicemix.common.BaseLifeCycle;
+import org.apache.servicemix.common.ExchangeProcessor;
+import org.apache.servicemix.http.HttpEndpoint;
+import org.apache.servicemix.http.HttpLifeCycle;
+import org.apache.servicemix.http.HttpProcessor;
+import org.apache.servicemix.http.ServerManager;
+import org.apache.servicemix.soap.SoapFault;
+import org.apache.servicemix.soap.SoapHelper;
+import org.apache.servicemix.soap.handlers.AddressingInHandler;
+import org.apache.servicemix.soap.marshalers.JBIMarshaler;
+import org.apache.servicemix.soap.marshalers.SoapMarshaler;
+import org.apache.servicemix.soap.marshalers.SoapMessage;
+import org.mortbay.jetty.RetryRequest;
+import org.mortbay.jetty.handler.ContextHandler;
+import org.mortbay.util.ajax.Continuation;
+import org.mortbay.util.ajax.ContinuationSupport;
+
+import edu.emory.mathcs.backport.java.util.concurrent.ConcurrentHashMap;
+
+public class ConsumerProcessor implements ExchangeProcessor, HttpProcessor {
+
+ public static final URI IN_ONLY = URI.create("http://www.w3.org/2004/08/wsdl/in-only");
+ public static final URI IN_OUT = URI.create("http://www.w3.org/2004/08/wsdl/in-out");
+ public static final URI ROBUST_IN_ONLY = URI.create("http://www.w3.org/2004/08/wsdl/robust-in-only");
+
+ protected HttpEndpoint endpoint;
+ protected ContextHandler httpContext;
+ protected ComponentContext context;
+ protected DeliveryChannel channel;
+ protected SoapMarshaler soapMarshaler;
+ protected JBIMarshaler jbiMarshaler;
+ protected SoapHelper soapHelper;
+ protected Map locks;
+
+ public ConsumerProcessor(HttpEndpoint endpoint) {
+ this.endpoint = endpoint;
+ this.soapMarshaler = new SoapMarshaler(endpoint.isSoap());
+ this.soapHelper = new SoapHelper(endpoint);
+ this.soapHelper.addPolicy(new AddressingInHandler());
+ this.jbiMarshaler = new JBIMarshaler();
+ this.locks = new ConcurrentHashMap();
+ }
+
+ public void process(MessageExchange exchange) throws Exception {
+ Continuation cont = (Continuation) locks.remove(exchange.getExchangeId());
+ if (cont != null) {
+ //System.err.println("Notifying: " + exchange.getExchangeId());
+ cont.resume();
+ } else {
+ throw new IllegalStateException("Exchange not found");
+ }
+ }
+
+ public void start() throws Exception {
+ Thread.currentThread().setContextClassLoader(getClass().getClassLoader());
+ String url = endpoint.getLocationURI();
+ httpContext = getServerManager().createContext(url, this);
+ httpContext.start();
+ context = endpoint.getServiceUnit().getComponent().getComponentContext();
+ channel = context.getDeliveryChannel();
+ }
+
+ public void stop() throws Exception {
+ httpContext.stop();
+ getServerManager().remove(httpContext);
+ }
+
+ public void process(HttpServletRequest request, HttpServletResponse response) throws Exception {
+ if (!"POST".equals(request.getMethod())) {
+ throw new UnsupportedOperationException(request.getMethod() + " not supported");
+ }
+ QName envelopeName = null;
+ try {
+ // Not giving a specific mutex will synchronize on the contination itself
+ Continuation cont = ContinuationSupport.getContinuation(request, null);
+ MessageExchange exchange;
+ // If the continuation is not a retry
+ if (!cont.isPending()) {
+ SoapMessage message = soapMarshaler.createReader().read(request.getInputStream(),
+ request.getHeader("Content-Type"));
+ exchange = soapHelper.createExchange(message);
+ //System.err.println("Handling: " + exchange.getExchangeId());
+ NormalizedMessage inMessage = exchange.getMessage("in");
+ inMessage.setProperty(JbiConstants.PROTOCOL_HEADERS, getHeaders(request));
+ locks.put(exchange.getExchangeId(), cont);
+ request.setAttribute(MessageExchange.class.getName(), exchange);
+ //System.err.println("Sending: " + exchange.getExchangeId());
+ ((BaseLifeCycle) endpoint.getServiceUnit().getComponent().getLifeCycle()).sendConsumerExchange(exchange, this);
+ // TODO: make this timeout configurable
+ boolean result = cont.suspend(1000 * 60); // 60 s
+ if (!result) {
+ throw new Exception("Error sending exchange: aborted");
+ }
+ //System.err.println("Continuing: " + exchange.getExchangeId());
+ } else {
+ exchange = (MessageExchange) request.getAttribute(MessageExchange.class.getName());
+ request.removeAttribute(MessageExchange.class.getName());
+ boolean result = cont.suspend(0);
+ // Check if this is a timeout
+ if (exchange == null) {
+ throw new IllegalStateException("Exchange not found");
+ }
+ //System.err.println("Processing: " + exchange.getExchangeId());
+ if (!result) {
+ throw new Exception("Timeout");
+ }
+ }
+ if (exchange.getStatus() == ExchangeStatus.ERROR) {
+ exchange.setStatus(ExchangeStatus.DONE);
+ channel.send(exchange);
+ if (exchange.getError() != null) {
+ throw new Exception(exchange.getError());
+ } else if (exchange.getFault() != null) {
+ throw new SoapFault(SoapFault.RECEIVER, null, null, null, exchange.getFault().getContent());
+ } else {
+ throw new Exception("Unkown Error");
+ }
+ } else if (exchange.getStatus() == ExchangeStatus.ACTIVE) {
+ NormalizedMessage outMsg = exchange.getMessage("out");
+ if (outMsg != null) {
+ SoapMessage out = new SoapMessage();
+ jbiMarshaler.fromNMS(out, outMsg);
+ soapMarshaler.createWriter(out).write(response.getOutputStream());
+ }
+ exchange.setStatus(ExchangeStatus.DONE);
+ channel.send(exchange);
+ }
+ } catch (SoapFault fault) {
+ if (SoapFault.SENDER.equals(fault.getCode())) {
+ response.setStatus(HttpServletResponse.SC_BAD_REQUEST);
+ } else {
+ response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
+ }
+ SoapMessage soapFault = new SoapMessage();
+ soapFault.setFault(fault);
+ soapFault.setEnvelopeName(envelopeName);
+ soapMarshaler.createWriter(soapFault).write(response.getOutputStream());
+ } catch (RetryRequest e) {
+ throw e;
+ } catch (Exception e) {
+ throw e;
+ }
+ }
+
+ protected Map getHeaders(HttpServletRequest request) {
+ Map headers = new HashMap();
+ Enumeration enumeration = request.getHeaderNames();
+ while (enumeration.hasMoreElements()) {
+ String name = (String) enumeration.nextElement();
+ String value = request.getHeader(name);
+ headers.put(name, value);
+ }
+ return headers;
+ }
+
+ protected ServerManager getServerManager() {
+ HttpLifeCycle lf = (HttpLifeCycle) endpoint.getServiceUnit().getComponent().getLifeCycle();
+ return lf.getServer();
+ }
+
+}
Propchange: incubator/servicemix/trunk/servicemix-http/src/main/java/org/apache/servicemix/http/processors/ConsumerProcessor.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: incubator/servicemix/trunk/servicemix-http/src/main/java/org/apache/servicemix/http/processors/ProviderProcessor.java
URL: http://svn.apache.org/viewcvs/incubator/servicemix/trunk/servicemix-http/src/main/java/org/apache/servicemix/http/processors/ProviderProcessor.java?rev=379627&r1=379626&r2=379627&view=diff
==============================================================================
--- incubator/servicemix/trunk/servicemix-http/src/main/java/org/apache/servicemix/http/processors/ProviderProcessor.java (original)
+++ incubator/servicemix/trunk/servicemix-http/src/main/java/org/apache/servicemix/http/processors/ProviderProcessor.java Tue Feb 21 15:40:05 2006
@@ -1,227 +1,227 @@
-/*
- * Copyright 2005-2006 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.servicemix.http.processors;
-
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.io.OutputStream;
-import java.util.Enumeration;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import javax.jbi.messaging.DeliveryChannel;
-import javax.jbi.messaging.ExchangeStatus;
-import javax.jbi.messaging.Fault;
-import javax.jbi.messaging.InOnly;
-import javax.jbi.messaging.InOptionalOut;
-import javax.jbi.messaging.InOut;
-import javax.jbi.messaging.MessageExchange;
-import javax.jbi.messaging.NormalizedMessage;
-import javax.servlet.http.HttpServletRequest;
-
-import org.apache.commons.httpclient.Header;
-import org.apache.commons.httpclient.HostConfiguration;
-import org.apache.commons.httpclient.HttpClient;
-import org.apache.commons.httpclient.HttpMethod;
-import org.apache.commons.httpclient.HttpStatus;
-import org.apache.commons.httpclient.URI;
-import org.apache.commons.httpclient.URIException;
-import org.apache.commons.httpclient.methods.ByteArrayRequestEntity;
-import org.apache.commons.httpclient.methods.PostMethod;
-import org.apache.commons.httpclient.methods.RequestEntity;
-import org.apache.servicemix.JbiConstants;
-import org.apache.servicemix.common.ExchangeProcessor;
-import org.apache.servicemix.http.HttpEndpoint;
-import org.apache.servicemix.http.HttpLifeCycle;
-import org.apache.servicemix.soap.marshalers.JBIMarshaler;
-import org.apache.servicemix.soap.marshalers.SoapMarshaler;
-import org.apache.servicemix.soap.marshalers.SoapMessage;
-import org.apache.servicemix.soap.marshalers.SoapReader;
-import org.apache.servicemix.soap.marshalers.SoapWriter;
-
-/**
- *
- * @author Guillaume Nodet
- * @version $Revision: 370186 $
- * @since 3.0
- */
-public class ProviderProcessor implements ExchangeProcessor {
-
- protected HttpEndpoint endpoint;
- protected HostConfiguration host;
- protected SoapMarshaler soapMarshaler;
- protected JBIMarshaler jbiMarshaler;
- protected DeliveryChannel channel;
-
- public ProviderProcessor(HttpEndpoint endpoint) {
- try {
- this.endpoint = endpoint;
- this.soapMarshaler = new SoapMarshaler(endpoint.isSoap());
- this.jbiMarshaler = new JBIMarshaler();
- this.host = new HostConfiguration();
- this.host.setHost(new URI(endpoint.getLocationURI(), false));
- } catch (URIException e) {
- throw new RuntimeException(e);
- }
- }
-
- public void process(MessageExchange exchange) throws Exception {
- if (exchange.getStatus() == ExchangeStatus.DONE) {
- return;
- } else if (exchange.getStatus() == ExchangeStatus.ERROR) {
- exchange.setStatus(ExchangeStatus.DONE);
- channel.send(exchange);
- return;
- }
- PostMethod method = new PostMethod(endpoint.getLocationURI());
- SoapMessage soapMessage = new SoapMessage();
- NormalizedMessage nm = exchange.getMessage("in");
- jbiMarshaler.fromNMS(soapMessage, nm);
- SoapWriter writer = soapMarshaler.createWriter(soapMessage);
- Map headers = (Map) nm.getProperty(JbiConstants.PROTOCOL_HEADERS);
- if (headers != null) {
- for (Iterator it = headers.keySet().iterator(); it.hasNext();) {
- String name = (String) it.next();
- String value = (String) headers.get(name);
- method.addRequestHeader(name, value);
- }
- }
- method.addRequestHeader("Content-Type", writer.getContentType());
- method.setRequestEntity(writeMessage(writer));
- int response = getClient().executeMethod(host, method);
- if (response != HttpStatus.SC_OK) {
- if (exchange instanceof InOnly == false) {
- Fault fault = exchange.createFault();
- SoapReader reader = soapMarshaler.createReader();
- Header contentType = method.getResponseHeader("Content-Type");
- soapMessage = reader.read(method.getResponseBodyAsStream(),
- contentType != null ? contentType.getValue() : null);
- fault.setProperty(JbiConstants.PROTOCOL_HEADERS, getHeaders(method));
- jbiMarshaler.toNMS(fault, soapMessage);
- exchange.setFault(fault);
- exchange.setStatus(ExchangeStatus.ERROR);
- channel.send(exchange);
- return;
- } else {
- throw new Exception("Invalid status response: " + response);
- }
- }
- if (exchange instanceof InOut) {
- NormalizedMessage msg = exchange.createMessage();
- SoapReader reader = soapMarshaler.createReader();
- Header contentType = method.getResponseHeader("Content-Type");
- soapMessage = reader.read(method.getResponseBodyAsStream(),
- contentType != null ? contentType.getValue() : null);
- msg.setProperty(JbiConstants.PROTOCOL_HEADERS, getHeaders(method));
- jbiMarshaler.toNMS(msg, soapMessage);
- ((InOut) exchange).setOutMessage(msg);
- channel.sendSync(exchange);
- } else if (exchange instanceof InOptionalOut) {
- if (method.getResponseContentLength() == 0) {
- exchange.setStatus(ExchangeStatus.DONE);
- channel.send(exchange);
- } else {
- NormalizedMessage msg = exchange.createMessage();
- SoapReader reader = soapMarshaler.createReader();
- soapMessage = reader.read(method.getResponseBodyAsStream(),
- method.getResponseHeader("Content-Type").getValue());
- msg.setProperty(JbiConstants.PROTOCOL_HEADERS, getHeaders(method));
- jbiMarshaler.toNMS(msg, soapMessage);
- ((InOptionalOut) exchange).setOutMessage(msg);
- channel.sendSync(exchange);
- }
- } else {
- exchange.setStatus(ExchangeStatus.DONE);
- channel.send(exchange);
- }
- }
-
- public void start() throws Exception {
- channel = endpoint.getServiceUnit().getComponent().getComponentContext().getDeliveryChannel();
- }
-
- public void stop() throws Exception {
- }
-
- protected Map getHeaders(HttpServletRequest request) {
- Map headers = new HashMap();
- Enumeration enumeration = request.getHeaderNames();
- while (enumeration.hasMoreElements()) {
- String name = (String) enumeration.nextElement();
- String value = request.getHeader(name);
- headers.put(name, value);
- }
- return headers;
- }
-
- protected Map getHeaders(HttpMethod method) {
- Map headers = new HashMap();
- Header[] h = method.getResponseHeaders();
- for (int i = 0; i < h.length; i++) {
- headers.put(h[i].getName(), h[i].getValue());
- }
- return headers;
- }
-
- protected RequestEntity writeMessage(SoapWriter writer) throws Exception {
- HttpLifeCycle lf = (HttpLifeCycle) endpoint.getServiceUnit().getComponent().getLifeCycle();
- if (lf.getConfiguration().isStreamingEnabled()) {
- return new StreamingRequestEntity(writer);
- } else {
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
- writer.write(baos);
- return new ByteArrayRequestEntity(baos.toByteArray(), writer.getContentType());
- }
- }
-
- protected HttpClient getClient() {
- HttpLifeCycle lf = (HttpLifeCycle) endpoint.getServiceUnit().getComponent().getLifeCycle();
- return lf.getClient();
- }
-
- public static class StreamingRequestEntity implements RequestEntity {
-
- private SoapWriter writer;
-
- public StreamingRequestEntity(SoapWriter writer) {
- this.writer = writer;
- }
-
- public boolean isRepeatable() {
- return false;
- }
-
- public void writeRequest(OutputStream out) throws IOException {
- try {
- writer.write(out);
- out.flush();
- } catch (Exception e) {
- throw (IOException) new IOException("Could not write request").initCause(e);
- }
- }
-
- public long getContentLength() {
- // not known so we send negative value
- return -1;
- }
-
- public String getContentType() {
- return writer.getContentType();
- }
-
- }
-}
+/*
+ * Copyright 2005-2006 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.servicemix.http.processors;
+
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+
+import javax.jbi.messaging.DeliveryChannel;
+import javax.jbi.messaging.ExchangeStatus;
+import javax.jbi.messaging.Fault;
+import javax.jbi.messaging.InOnly;
+import javax.jbi.messaging.InOptionalOut;
+import javax.jbi.messaging.InOut;
+import javax.jbi.messaging.MessageExchange;
+import javax.jbi.messaging.NormalizedMessage;
+import javax.servlet.http.HttpServletRequest;
+
+import org.apache.commons.httpclient.Header;
+import org.apache.commons.httpclient.HostConfiguration;
+import org.apache.commons.httpclient.HttpClient;
+import org.apache.commons.httpclient.HttpMethod;
+import org.apache.commons.httpclient.HttpStatus;
+import org.apache.commons.httpclient.URI;
+import org.apache.commons.httpclient.URIException;
+import org.apache.commons.httpclient.methods.ByteArrayRequestEntity;
+import org.apache.commons.httpclient.methods.PostMethod;
+import org.apache.commons.httpclient.methods.RequestEntity;
+import org.apache.servicemix.JbiConstants;
+import org.apache.servicemix.common.ExchangeProcessor;
+import org.apache.servicemix.http.HttpEndpoint;
+import org.apache.servicemix.http.HttpLifeCycle;
+import org.apache.servicemix.soap.marshalers.JBIMarshaler;
+import org.apache.servicemix.soap.marshalers.SoapMarshaler;
+import org.apache.servicemix.soap.marshalers.SoapMessage;
+import org.apache.servicemix.soap.marshalers.SoapReader;
+import org.apache.servicemix.soap.marshalers.SoapWriter;
+
+/**
+ *
+ * @author Guillaume Nodet
+ * @version $Revision: 370186 $
+ * @since 3.0
+ */
+public class ProviderProcessor implements ExchangeProcessor {
+
+ protected HttpEndpoint endpoint;
+ protected HostConfiguration host;
+ protected SoapMarshaler soapMarshaler;
+ protected JBIMarshaler jbiMarshaler;
+ protected DeliveryChannel channel;
+
+ public ProviderProcessor(HttpEndpoint endpoint) {
+ try {
+ this.endpoint = endpoint;
+ this.soapMarshaler = new SoapMarshaler(endpoint.isSoap());
+ this.jbiMarshaler = new JBIMarshaler();
+ this.host = new HostConfiguration();
+ this.host.setHost(new URI(endpoint.getLocationURI(), false));
+ } catch (URIException e) {
+ throw new RuntimeException(e);
+ }
+ }
+
+ public void process(MessageExchange exchange) throws Exception {
+ if (exchange.getStatus() == ExchangeStatus.DONE) {
+ return;
+ } else if (exchange.getStatus() == ExchangeStatus.ERROR) {
+ exchange.setStatus(ExchangeStatus.DONE);
+ channel.send(exchange);
+ return;
+ }
+ PostMethod method = new PostMethod(endpoint.getLocationURI());
+ SoapMessage soapMessage = new SoapMessage();
+ NormalizedMessage nm = exchange.getMessage("in");
+ jbiMarshaler.fromNMS(soapMessage, nm);
+ SoapWriter writer = soapMarshaler.createWriter(soapMessage);
+ Map headers = (Map) nm.getProperty(JbiConstants.PROTOCOL_HEADERS);
+ if (headers != null) {
+ for (Iterator it = headers.keySet().iterator(); it.hasNext();) {
+ String name = (String) it.next();
+ String value = (String) headers.get(name);
+ method.addRequestHeader(name, value);
+ }
+ }
+ method.addRequestHeader("Content-Type", writer.getContentType());
+ method.setRequestEntity(writeMessage(writer));
+ int response = getClient().executeMethod(host, method);
+ if (response != HttpStatus.SC_OK) {
+ if (exchange instanceof InOnly == false) {
+ Fault fault = exchange.createFault();
+ SoapReader reader = soapMarshaler.createReader();
+ Header contentType = method.getResponseHeader("Content-Type");
+ soapMessage = reader.read(method.getResponseBodyAsStream(),
+ contentType != null ? contentType.getValue() : null);
+ fault.setProperty(JbiConstants.PROTOCOL_HEADERS, getHeaders(method));
+ jbiMarshaler.toNMS(fault, soapMessage);
+ exchange.setFault(fault);
+ exchange.setStatus(ExchangeStatus.ERROR);
+ channel.send(exchange);
+ return;
+ } else {
+ throw new Exception("Invalid status response: " + response);
+ }
+ }
+ if (exchange instanceof InOut) {
+ NormalizedMessage msg = exchange.createMessage();
+ SoapReader reader = soapMarshaler.createReader();
+ Header contentType = method.getResponseHeader("Content-Type");
+ soapMessage = reader.read(method.getResponseBodyAsStream(),
+ contentType != null ? contentType.getValue() : null);
+ msg.setProperty(JbiConstants.PROTOCOL_HEADERS, getHeaders(method));
+ jbiMarshaler.toNMS(msg, soapMessage);
+ ((InOut) exchange).setOutMessage(msg);
+ channel.sendSync(exchange);
+ } else if (exchange instanceof InOptionalOut) {
+ if (method.getResponseContentLength() == 0) {
+ exchange.setStatus(ExchangeStatus.DONE);
+ channel.send(exchange);
+ } else {
+ NormalizedMessage msg = exchange.createMessage();
+ SoapReader reader = soapMarshaler.createReader();
+ soapMessage = reader.read(method.getResponseBodyAsStream(),
+ method.getResponseHeader("Content-Type").getValue());
+ msg.setProperty(JbiConstants.PROTOCOL_HEADERS, getHeaders(method));
+ jbiMarshaler.toNMS(msg, soapMessage);
+ ((InOptionalOut) exchange).setOutMessage(msg);
+ channel.sendSync(exchange);
+ }
+ } else {
+ exchange.setStatus(ExchangeStatus.DONE);
+ channel.send(exchange);
+ }
+ }
+
+ public void start() throws Exception {
+ channel = endpoint.getServiceUnit().getComponent().getComponentContext().getDeliveryChannel();
+ }
+
+ public void stop() throws Exception {
+ }
+
+ protected Map getHeaders(HttpServletRequest request) {
+ Map headers = new HashMap();
+ Enumeration enumeration = request.getHeaderNames();
+ while (enumeration.hasMoreElements()) {
+ String name = (String) enumeration.nextElement();
+ String value = request.getHeader(name);
+ headers.put(name, value);
+ }
+ return headers;
+ }
+
+ protected Map getHeaders(HttpMethod method) {
+ Map headers = new HashMap();
+ Header[] h = method.getResponseHeaders();
+ for (int i = 0; i < h.length; i++) {
+ headers.put(h[i].getName(), h[i].getValue());
+ }
+ return headers;
+ }
+
+ protected RequestEntity writeMessage(SoapWriter writer) throws Exception {
+ HttpLifeCycle lf = (HttpLifeCycle) endpoint.getServiceUnit().getComponent().getLifeCycle();
+ if (lf.getConfiguration().isStreamingEnabled()) {
+ return new StreamingRequestEntity(writer);
+ } else {
+ ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ writer.write(baos);
+ return new ByteArrayRequestEntity(baos.toByteArray(), writer.getContentType());
+ }
+ }
+
+ protected HttpClient getClient() {
+ HttpLifeCycle lf = (HttpLifeCycle) endpoint.getServiceUnit().getComponent().getLifeCycle();
+ return lf.getClient();
+ }
+
+ public static class StreamingRequestEntity implements RequestEntity {
+
+ private SoapWriter writer;
+
+ public StreamingRequestEntity(SoapWriter writer) {
+ this.writer = writer;
+ }
+
+ public boolean isRepeatable() {
+ return false;
+ }
+
+ public void writeRequest(OutputStream out) throws IOException {
+ try {
+ writer.write(out);
+ out.flush();
+ } catch (Exception e) {
+ throw (IOException) new IOException("Could not write request").initCause(e);
+ }
+ }
+
+ public long getContentLength() {
+ // not known so we send negative value
+ return -1;
+ }
+
+ public String getContentType() {
+ return writer.getContentType();
+ }
+
+ }
+}
Propchange: incubator/servicemix/trunk/servicemix-http/src/main/java/org/apache/servicemix/http/processors/ProviderProcessor.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: incubator/servicemix/trunk/servicemix-http/src/main/resources/META-INF/DISCLAIMER.txt
URL: http://svn.apache.org/viewcvs/incubator/servicemix/trunk/servicemix-http/src/main/resources/META-INF/DISCLAIMER.txt?rev=379627&r1=379626&r2=379627&view=diff
==============================================================================
--- incubator/servicemix/trunk/servicemix-http/src/main/resources/META-INF/DISCLAIMER.txt (original)
+++ incubator/servicemix/trunk/servicemix-http/src/main/resources/META-INF/DISCLAIMER.txt Tue Feb 21 15:40:05 2006
@@ -1,7 +1,7 @@
-ActiveMQ is an effort undergoing incubation at the Apache Software Foundation
-(ASF), sponsored by the Geronimo PMC. Incubation is required of all newly
-accepted projects until a further review indicates that the infrastructure,
-communications, and decision making process have stabilized in a manner
-consistent with other successful ASF projects. While incubation status is not
-necessarily a reflection of the completeness or stability of the code, it does
+ActiveMQ is an effort undergoing incubation at the Apache Software Foundation
+(ASF), sponsored by the Geronimo PMC. Incubation is required of all newly
+accepted projects until a further review indicates that the infrastructure,
+communications, and decision making process have stabilized in a manner
+consistent with other successful ASF projects. While incubation status is not
+necessarily a reflection of the completeness or stability of the code, it does
indicate that the project has yet to be fully endorsed by the ASF.
Propchange: incubator/servicemix/trunk/servicemix-http/src/main/resources/META-INF/DISCLAIMER.txt
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/servicemix/trunk/servicemix-http/src/main/resources/META-INF/LICENSE.txt
------------------------------------------------------------------------------
svn:eol-style = native