<version.equinox>3.4.2.R34x_v20080826-1230</version.equinox>
<version.maven-bundle-plugin>2.0.0</version.maven-bundle-plugin>
<version.activemq>5.2.0.0006</version.activemq>
- <version.activemq-web>5.2.0.0005</version.activemq-web>
+ <!-- <version.activemq-web>5.2.0.0005</version.activemq-web> -->
<version.maven-argeo-osgi>0.1.8</version.maven-argeo-osgi>
</properties>
<scm>
<artifactId>org.springframework.jms</artifactId>
<version>${version.spring}</version>
</dependency>
-
+ <!--
<dependency>
<groupId>org.springframework.ws</groupId>
<artifactId>org.springframework.ws</artifactId>
<version>${version.spring-ws}</version>
</dependency>
+ -->
<dependency>
<groupId>org.springframework.ws</groupId>
<artifactId>org.springframework.oxm</artifactId>
<groupId>org.apache.activemq</groupId>
<artifactId>com.springsource.org.apache.activemq.pool</artifactId>
<version>5.2.0</version>
- </dependency>
- <dependency>
- <groupId>org.argeo.dep.osgi</groupId>
+ <exclusions>
+ <exclusion>
+ <groupId>org.apache.activemq</groupId>
+ <artifactId>com.springsource.org.apache.activemq</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <!--
+ <dependency> <groupId>org.argeo.dep.osgi</groupId>
<artifactId>org.argeo.dep.osgi.activemq.web</artifactId>
- <version>${version.activemq-web}</version>
- </dependency>
-
+ <version>${version.activemq-web}</version> </dependency>
+ -->
<dependency>
<groupId>javax.xml.soap</groupId>
<artifactId>com.springsource.javax.xml.soap</artifactId>
</dependency>
<!-- Spring -->
+ <!--
<dependency>
<groupId>org.springframework.ws</groupId>
<artifactId>org.springframework.ws</artifactId>
</dependency>
+ -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>org.springframework.web.servlet</artifactId>
+++ /dev/null
-package org.argeo.slc.ws;\r
-\r
-import javax.xml.namespace.QName;\r
-\r
-import org.springframework.ws.context.MessageContext;\r
-import org.springframework.ws.soap.SoapFault;\r
-import org.springframework.ws.soap.SoapFaultDetail;\r
-import org.springframework.ws.soap.server.endpoint.SimpleSoapExceptionResolver;\r
-\r
-import org.apache.commons.logging.Log;\r
-import org.apache.commons.logging.LogFactory;\r
-\r
-public class CustomSoapExceptionResolver extends SimpleSoapExceptionResolver {\r
- private Log log = LogFactory.getLog(getClass());\r
-\r
- @Override\r
- protected void customizeFault(MessageContext messageContext,\r
- Object endpoint, Exception ex, SoapFault fault) {\r
- log.error("Exception " + ex.getMessage() + " in end point " + endpoint,\r
- ex);\r
- SoapFaultDetail detail = fault.addFaultDetail();\r
- for (StackTraceElement elem : ex.getStackTrace()) {\r
- detail.addFaultDetailElement(new QName("StackElement")).addText(\r
- elem.toString());\r
- }\r
- }\r
-\r
-}\r
+++ /dev/null
-package org.argeo.slc.ws.process;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import org.argeo.slc.SlcException;
-import org.argeo.slc.dao.process.SlcExecutionDao;
-import org.argeo.slc.msg.process.SlcExecutionRequest;
-import org.argeo.slc.msg.process.SlcExecutionStatusRequest;
-import org.argeo.slc.process.SlcExecution;
-
-import org.springframework.ws.server.endpoint.AbstractMarshallingPayloadEndpoint;
-
-public class SlcExecutionRequestEp extends AbstractMarshallingPayloadEndpoint {
-
- private Log log = LogFactory.getLog(getClass());
-
- private final SlcExecutionDao slcExecutionDao;
-
- public SlcExecutionRequestEp(SlcExecutionDao slcExecutionDao) {
- this.slcExecutionDao = slcExecutionDao;
- }
-
- @Override
- protected Object invokeInternal(Object requestObject) throws Exception {
- if (requestObject instanceof SlcExecutionRequest) {
-
- SlcExecutionRequest msg = (SlcExecutionRequest) requestObject;
- SlcExecution slcExecutionMsg = msg.getSlcExecution();
-
- SlcExecution slcExecutionPersisted = slcExecutionDao
- .getSlcExecution(slcExecutionMsg.getUuid());
- if (slcExecutionPersisted == null) {
- if (log.isTraceEnabled())
- log.trace("Creating SLC execution #"
- + slcExecutionMsg.getUuid());
-
- slcExecutionDao.create(slcExecutionMsg);
- } else {
- if (log.isTraceEnabled())
- log.trace("Updating SLC execution #"
- + slcExecutionMsg.getUuid());
-
- slcExecutionDao.merge(slcExecutionMsg);
- }
- return null;
-
- } else if (requestObject instanceof SlcExecutionStatusRequest) {
- SlcExecutionStatusRequest msg = (SlcExecutionStatusRequest) requestObject;
- SlcExecution slcExecution = slcExecutionDao.getSlcExecution(msg
- .getSlcExecutionUuid());
- if (slcExecution == null)
- throw new SlcException("Could not find SLC execution #"
- + msg.getSlcExecutionUuid());
-
- slcExecution.setStatus(msg.getNewStatus());
-
- if (log.isTraceEnabled())
- log.trace("Updating status for SLC execution #"
- + slcExecution.getUuid());
-
- slcExecutionDao.update(slcExecution);
- return null;
- } else {
- throw new SlcException("Unrecognized request format: "
- + requestObject.getClass());
- }
- }
-}
+++ /dev/null
-package org.argeo.slc.ws.process;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.argeo.slc.dao.process.SlcExecutionDao;
-import org.argeo.slc.msg.process.SlcExecutionStepsRequest;
-import org.argeo.slc.process.SlcExecutionStep;
-import org.springframework.ws.server.endpoint.AbstractMarshallingPayloadEndpoint;
-
-public class SlcExecutionStepsRequestEp extends
- AbstractMarshallingPayloadEndpoint {
-
- private Log log = LogFactory.getLog(getClass());
-
- private final SlcExecutionDao slcExecutionDao;
-
- public SlcExecutionStepsRequestEp(SlcExecutionDao slcExecutionDao) {
- this.slcExecutionDao = slcExecutionDao;
- }
-
- @Override
- protected Object invokeInternal(Object requestObject) throws Exception {
- String uuid = null;
- try {
- SlcExecutionStepsRequest msg = (SlcExecutionStepsRequest) requestObject;
- uuid = msg.getSlcExecutionUuid();
- if (log.isTraceEnabled()) {
- log.trace("Trying to add additional steps to SLC execution #"
- + uuid + ":");
- for (SlcExecutionStep step : msg.getSteps()) {
- log.trace("Step " + step.getUuid() + " (in SLC execution #"
- + uuid + ")");
- }
- log.trace("Adding " + msg.getSteps().size()
- + " steps to SLC execution #" + uuid);
- }
-
- slcExecutionDao.addSteps(uuid, msg.getSteps());
- return null;
- } catch (Exception e) {
- log.error("Could not update SLC execution #" + uuid
- + " with additional steps", e);
- throw e;
- }
- }
-
-}
+++ /dev/null
-package org.argeo.slc.ws.test.tree;
-
-import org.springframework.ws.server.endpoint.AbstractMarshallingPayloadEndpoint;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import org.argeo.slc.dao.test.tree.TreeTestResultDao;
-import org.argeo.slc.msg.test.tree.CloseTreeTestResultRequest;
-
-public class CloseTreeTestResultRequestEp extends
- AbstractMarshallingPayloadEndpoint {
-
- private Log log = LogFactory.getLog(getClass());
-
- private final TreeTestResultDao treeTestResultDao;
-
- public CloseTreeTestResultRequestEp(TreeTestResultDao treeTestResultDao) {
- this.treeTestResultDao = treeTestResultDao;
- }
-
- @Override
- protected Object invokeInternal(Object requestObject) throws Exception {
- CloseTreeTestResultRequest msg = (CloseTreeTestResultRequest) requestObject;
-
- if (log.isTraceEnabled())
- log.trace("Closing result #" + msg.getResultUuid() + " at date "
- + msg.getCloseDate());
-
- treeTestResultDao.close(msg.getResultUuid(), msg.getCloseDate());
-
- return null;
- }
-
-}
+++ /dev/null
-package org.argeo.slc.ws.test.tree;
-
-import org.springframework.ws.server.endpoint.AbstractMarshallingPayloadEndpoint;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import org.argeo.slc.core.test.tree.TreeTestResult;
-import org.argeo.slc.dao.test.tree.TreeTestResultDao;
-import org.argeo.slc.msg.test.tree.CreateTreeTestResultRequest;
-import org.argeo.slc.services.test.TestManagerService;
-
-public class CreateTreeTestResultRequestEp extends
- AbstractMarshallingPayloadEndpoint {
-
- private Log log = LogFactory.getLog(getClass());
-
- private final TreeTestResultDao treeTestResultDao;
- private final TestManagerService testManagerService;
-
- public CreateTreeTestResultRequestEp(TreeTestResultDao treeTestResultDao,
- TestManagerService testManagerService) {
- this.treeTestResultDao = treeTestResultDao;
- this.testManagerService = testManagerService;
- }
-
- @Override
- protected Object invokeInternal(Object requestObject) throws Exception {
- CreateTreeTestResultRequest msg = (CreateTreeTestResultRequest) requestObject;
- TreeTestResult treeTestResult = msg.getTreeTestResult();
-
- if (log.isTraceEnabled())
- log.trace("Creating result #" + treeTestResult.getUuid());
- treeTestResultDao.create(treeTestResult);
-
- if (log.isTraceEnabled())
- log.trace("Registering test run descriptor #"
- + msg.getTestRunDescriptor().getTestRunUuid());
- testManagerService
- .registerTestRunDescriptor(msg.getTestRunDescriptor());
-
- return null;
- }
-
-}
+++ /dev/null
-package org.argeo.slc.ws.test.tree;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.argeo.slc.dao.test.tree.TreeTestResultDao;
-import org.argeo.slc.msg.test.tree.ResultPartRequest;
-import org.argeo.slc.services.test.TestManagerService;
-import org.springframework.ws.server.endpoint.AbstractMarshallingPayloadEndpoint;
-
-public class ResultPartRequestEp extends AbstractMarshallingPayloadEndpoint {
-
- private Log log = LogFactory.getLog(getClass());
-
- private final TreeTestResultDao treeTestResultDao;
- private final TestManagerService testManagerService;
-
- public ResultPartRequestEp(TreeTestResultDao treeTestResultDao,
- TestManagerService testManagerService) {
- this.treeTestResultDao = treeTestResultDao;
- this.testManagerService = testManagerService;
- }
-
- @Override
- protected Object invokeInternal(Object requestObject) throws Exception {
- ResultPartRequest msg = (ResultPartRequest) requestObject;
-
- if (log.isTraceEnabled())
- log.trace("Registering test run descriptor #"
- + msg.getTestRunDescriptor().getTestRunUuid());
-
- testManagerService
- .registerTestRunDescriptor(msg.getTestRunDescriptor());
-
- if (log.isTraceEnabled())
- log.trace("Adding result part to test result #"
- + msg.getResultUuid());
-
- treeTestResultDao.addResultPart(msg.getResultUuid(), msg.getPath(), msg
- .getResultPart(), msg.getRelatedElements());
-// treeTestResultDao.updateAttributes(msg.getResultUuid(), msg
-// .getAttributes());
-
- return null;
- }
-
-}
javax.servlet.jsp.jstl.tlv,
javax.servlet.resources,
org.aopalliance.aop,
- org.apache.activemq.web,
org.apache.taglibs.standard.resources,
org.apache.taglibs.standard.tag.common.core,
org.apache.taglibs.standard.tag.rt.core,
org.springframework.web.servlet.handler,
org.springframework.web.servlet.view,
org.springframework.web.util,
- org.springframework.ws.context,
- org.springframework.ws.server.endpoint,
- org.springframework.ws.server.endpoint.interceptor,
- org.springframework.ws.server.endpoint.mapping,
- org.springframework.ws.soap.saaj,
- org.springframework.ws.transport.http,
- org.springframework.ws.wsdl.wsdl11,
org.springframework.xml.xsd
Require-Bundle: org.argeo.slc.server,
org.argeo.slc.specs,
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>\r
-<beans xmlns="http://www.springframework.org/schema/beans"\r
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
- xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">\r
-\r
- <import\r
- resource="classpath:/org/argeo/slc/castor/spring/applicationContext.xml" />\r
- <import\r
- resource="classpath:/org/argeo/slc/xml/spring/applicationContext.xml" />\r
-\r
- <bean name="slcExecutionRequestEp"\r
- class="org.argeo.slc.ws.process.SlcExecutionRequestEp">\r
- <constructor-arg ref="slcExecutionDao" />\r
- <property name="marshaller" ref="slcDefault.castor.marshaller" />\r
- <property name="unmarshaller"\r
- ref="slcDefault.castor.marshaller" />\r
- </bean>\r
-\r
- <bean name="slcExecutionStepsRequestEp"\r
- class="org.argeo.slc.ws.process.SlcExecutionStepsRequestEp">\r
- <constructor-arg ref="slcExecutionDao" />\r
- <property name="marshaller" ref="slcDefault.castor.marshaller" />\r
- <property name="unmarshaller"\r
- ref="slcDefault.castor.marshaller" />\r
- </bean>\r
-\r
- <bean name="createTreeTestResultRequestEp"\r
- class="org.argeo.slc.ws.test.tree.CreateTreeTestResultRequestEp">\r
- <constructor-arg ref="testResultDao" />\r
- <constructor-arg ref="testManagerService" />\r
- <property name="marshaller" ref="slcDefault.castor.marshaller" />\r
- <property name="unmarshaller"\r
- ref="slcDefault.castor.marshaller" />\r
- </bean>\r
-\r
- <bean name="closeTreeTestResultRequestEp"\r
- class="org.argeo.slc.ws.test.tree.CloseTreeTestResultRequestEp">\r
- <constructor-arg ref="testResultDao" />\r
- <property name="marshaller" ref="slcDefault.castor.marshaller" />\r
- <property name="unmarshaller"\r
- ref="slcDefault.castor.marshaller" />\r
- </bean>\r
-\r
- <bean name="resultPartRequestEp"\r
- class="org.argeo.slc.ws.test.tree.ResultPartRequestEp">\r
- <constructor-arg ref="testResultDao" />\r
- <constructor-arg ref="testManagerService" />\r
- <property name="marshaller" ref="slcDefault.castor.marshaller" />\r
- <property name="unmarshaller"\r
- ref="slcDefault.castor.marshaller" />\r
- </bean>\r
-\r
- <bean id="endPointMapping"\r
- class="org.springframework.ws.server.endpoint.mapping.PayloadRootQNameEndpointMapping">\r
- <property name="mappings">\r
-\r
- <props>\r
- <prop\r
- key="{http://argeo.org/projects/slc/schemas}slc-execution-request">\r
- slcExecutionRequestEp\r
- </prop>\r
- <prop\r
- key="{http://argeo.org/projects/slc/schemas}slc-execution-status-request">\r
- slcExecutionRequestEp\r
- </prop>\r
- <prop\r
- key="{http://argeo.org/projects/slc/schemas}slc-execution-steps-request">\r
- slcExecutionStepsRequestEp\r
- </prop>\r
- <prop\r
- key="{http://argeo.org/projects/slc/schemas}create-tree-test-result-request">\r
- createTreeTestResultRequestEp\r
- </prop>\r
- <prop\r
- key="{http://argeo.org/projects/slc/schemas}close-tree-test-result-request">\r
- closeTreeTestResultRequestEp\r
- </prop>\r
- <prop\r
- key="{http://argeo.org/projects/slc/schemas}result-part-request">\r
- resultPartRequestEp\r
- </prop>\r
- </props>\r
- </property>\r
-\r
- <property name="interceptors">\r
- <bean\r
- class="org.springframework.ws.server.endpoint.interceptor.PayloadLoggingInterceptor" />\r
- </property>\r
- </bean>\r
-\r
- <bean id="slcDefinition"\r
- class="org.springframework.ws.wsdl.wsdl11.DefaultWsdl11Definition">\r
- <property name="schema" ref="slcDefault.xml.xsdSchema" />\r
- <property name="portTypeName" value="Slc" />\r
- <property name="targetNamespace"\r
- value="http://argeo.org/projects/slc/definitions" />\r
- <property name="requestSuffix" value="-request" />\r
- </bean>\r
-\r
- <bean class="org.argeo.slc.ws.CustomSoapExceptionResolver" />\r
- \r
- <!-- Web Services transactions -->\r
- <aop:config>\r
- <aop:pointcut id="epMethods"\r
- expression="execution(* org.springframework.ws.server.endpoint.MessageEndpoint.invoke(..))" />\r
- <aop:advisor advice-ref="epAdvice" pointcut-ref="epMethods" />\r
- </aop:config>\r
-\r
- <tx:advice id="epAdvice" transaction-manager="hibernateTransactionManager">\r
- <tx:attributes>\r
- <tx:method name="*" propagation="REQUIRED" />\r
- </tx:attributes>\r
- </tx:advice>\r
-</beans>
\ No newline at end of file
<url-pattern>*.service</url-pattern>
</servlet-mapping>
- <!-- WS servlet -->
- <servlet>
- <servlet-name>slc-ws</servlet-name>
- <servlet-class>
- org.springframework.ws.transport.http.MessageDispatcherServlet</servlet-class>
- <init-param>
- <param-name>contextClass</param-name>
- <param-value>org.springframework.osgi.web.context.support.OsgiBundleXmlWebApplicationContext</param-value>
- </init-param>
- </servlet>
-
- <servlet-mapping>
- <servlet-name>slc-ws</servlet-name>
- <url-pattern>/slcService/*</url-pattern>
- </servlet-mapping>
-
<!-- XSLT servlet -->
<servlet>
<servlet-name>xslt</servlet-name>
<param-value>org.springframework.osgi.web.context.support.OsgiBundleXmlWebApplicationContext</param-value>
</context-param>
- <!--
- Env refs <resource-env-ref>
- <resource-env-ref-name>jdbc/mainDs</resource-env-ref-name>
- <resource-env-ref-type>javax.sql.DataSource</resource-env-ref-type>
- </resource-env-ref>
- -->
-
<!-- Log4j configContext loader config -->
<listener>
<display-name>Log4j</display-name>
</context-param>
- <!-- Active MQ -->
- <context-param>
+ <!--
+ Active MQ <context-param>
<param-name>org.apache.activemq.brokerURL</param-name>
- <param-value>vm://localhost</param-value>
- </context-param>
+ <param-value>vm://localhost</param-value> </context-param>
- <context-param>
+ <context-param>
<param-name>org.apache.activemq.embeddedBroker</param-name>
- <param-value>false</param-value>
- </context-param>
-
- <servlet>
+ <param-value>false</param-value> </context-param> <servlet>
<servlet-name>MessageListenerServlet</servlet-name>
<servlet-class>org.apache.activemq.web.MessageListenerServlet</servlet-class>
- <load-on-startup>1</load-on-startup>
- </servlet>
-
- <servlet-mapping>
+ <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping>
<servlet-name>MessageListenerServlet</servlet-name>
- <url-pattern>/amq/*</url-pattern>
- </servlet-mapping>
-
- <filter>
+ <url-pattern>/amq/*</url-pattern> </servlet-mapping> <filter>
<filter-name>session</filter-name>
<filter-class>org.apache.activemq.web.SessionFilter</filter-class>
- </filter>
-
- <filter-mapping>
- <filter-name>session</filter-name>
- <url-pattern>/amq/*</url-pattern>
- </filter-mapping>
+ </filter> <filter-mapping> <filter-name>session</filter-name>
+ <url-pattern>/amq/*</url-pattern> </filter-mapping>
+ -->
</web-app>
<artifactId>com.springsource.com.sun.xml.messaging.saaj</artifactId>
</dependency>
- <!-- For ActiveMQ Web -->
+ <!-- For ActiveMQ Web
<dependency>
<groupId>org.argeo.dep.osgi</groupId>
<artifactId>org.argeo.dep.osgi.activemq.web</artifactId>
- </dependency>
+ </dependency> -->
</dependencies>
</project>
\ No newline at end of file