239 lines
No EOL
11 KiB
XML
239 lines
No EOL
11 KiB
XML
<beans xmlns="http://www.springframework.org/schema/beans"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xmlns:jaxws="http://cxf.apache.org/jaxws"
|
|
xmlns:jaxrs="http://cxf.apache.org/jaxrs"
|
|
xmlns:context="http://www.springframework.org/schema/context"
|
|
xmlns:http="http://cxf.apache.org/transports/http/configuration"
|
|
xmlns:httpj="http://cxf.apache.org/transports/http-jetty/configuration"
|
|
xmlns:sec="http://cxf.apache.org/configuration/security"
|
|
xsi:schemaLocation="http://www.springframework.org/schema/beans
|
|
http://www.springframework.org/schema/beans/spring-beans.xsd
|
|
http://cxf.apache.org/jaxws
|
|
http://cxf.apache.org/schemas/jaxws.xsd
|
|
http://cxf.apache.org/jaxrs
|
|
http://cxf.apache.org/schemas/jaxrs.xsd
|
|
http://www.springframework.org/schema/context
|
|
http://www.springframework.org/schema/context/spring-context.xsd
|
|
http://cxf.apache.org/transports/http/configuration
|
|
http://cxf.apache.org/schemas/configuration/http-conf.xsd
|
|
http://cxf.apache.org/transports/http-jetty/configuration
|
|
http://cxf.apache.org/schemas/configuration/http-jetty.xsd
|
|
http://cxf.apache.org/configuration/security
|
|
http://cxf.apache.org/schemas/configuration/security.xsd">
|
|
|
|
<context:property-placeholder />
|
|
|
|
<import resource="classpath:META-INF/cxf/cxf.xml" />
|
|
<import resource="classpath:META-INF/cxf/cxf-servlet.xml" />
|
|
<import resource="file:///${edex.home}/conf/spring/edex-db.xml" />
|
|
<import resource="classpath:res/spring/edex-security.xml" />
|
|
<import resource="classpath:res/spring/eventbus-common.xml" />
|
|
<import resource="classpath:res/spring/request-service-common.xml" />
|
|
<import resource="classpath:res/spring/ebxml.xml" />
|
|
<import resource="classpath:res/spring/ebxml-validator-plugins.xml" />
|
|
<import resource="classpath:res/spring/ebxml-querytypes.xml" />
|
|
<import resource="classpath:res/spring/ebxml-registry-dao.xml" />
|
|
<import resource="classpath:res/spring/ebxml-subscription.xml" />
|
|
<import resource="classpath:res/spring/ebxml-constants.xml" />
|
|
<import resource="classpath:res/spring/ebxml-thrift-client.xml" />
|
|
<import resource="classpath:res/spring/ebxml-xacml.xml" />
|
|
<import resource="classpath:res/spring/ebxml-impl.xml" />
|
|
<import resource="classpath*:res/spring/ebxml-customQueryPlugin.xml" />
|
|
<import resource="classpath:res/spring/ebxml-webservices.xml" />
|
|
<import resource="classpath*:res/spring/webservices.xml" />
|
|
|
|
<bean id="errorHandlerRedeliveryPolicy" class="org.apache.camel.processor.errorhandler.RedeliveryPolicy">
|
|
<!-- This policy matches that of the old LoggingErrorHandlerBuilder
|
|
class we used to use. (That class is gone now that we have moved
|
|
to Camel 3.) -->
|
|
<property name="logRetryAttempted" value="false" />
|
|
</bean>
|
|
|
|
<bean id="errorHandler" class="org.apache.camel.builder.DeadLetterChannelBuilder">
|
|
<property name="deadLetterUri" value="log:edex?level=ERROR" />
|
|
<property name="redeliveryPolicy" ref="errorHandlerRedeliveryPolicy" />
|
|
</bean>
|
|
|
|
<bean id="serializationUtil" class="com.raytheon.uf.common.serialization.SerializationUtil" />
|
|
|
|
<bean id="genericThreadPool"
|
|
class="com.raytheon.uf.edex.esb.camel.spring.JmsThreadPoolTaskExecutor">
|
|
<property name="corePoolSize" value="0" />
|
|
<property name="maxPoolSize" value="1" />
|
|
<property name="queueCapacity" value="0" />
|
|
</bean>
|
|
|
|
<bean id="jms-generic"
|
|
class="com.raytheon.uf.edex.esb.camel.jms.DedicatedThreadJmsComponent">
|
|
<constructor-arg ref="jmsGenericConfig" />
|
|
<property name="taskExecutor" ref="genericThreadPool" />
|
|
</bean>
|
|
|
|
<bean id="jmsGenericConfig" class="org.apache.camel.component.jms.JmsConfiguration"
|
|
factory-bean="jmsConfig" factory-method="copy" />
|
|
|
|
<bean id="jmsConfig" class="org.apache.camel.component.jms.JmsConfiguration">
|
|
<property name="cacheLevelName" value="CACHE_CONSUMER" />
|
|
<property name="recoveryInterval" value="10000" />
|
|
<property name="requestTimeout" value="5000" />
|
|
<!-- If this is false, while stopping we will reject messages that have
|
|
already been pulled from qpid, essentially losing the message -->
|
|
<property name="acceptMessagesWhileStopping" value="true" />
|
|
|
|
<!-- receiveTimeout is amount of time thread waits to receive a message
|
|
before recycling -->
|
|
<!-- receiveTimeout also affects how fast a JMSConsumer will shut down,
|
|
because the thread may be stuck polling for the duration of receiveTimeout
|
|
before shutting down -->
|
|
<property name="receiveTimeout" value="5000" />
|
|
<property name="transacted" value="false" />
|
|
|
|
<!-- force maxMessagesPerTask so that the threads don't keep disconnecting
|
|
and reconnecting. This will keep a data-type attached to the initial thread
|
|
it starts on -->
|
|
<property name="maxMessagesPerTask" value="-1" />
|
|
<property name="listenerConnectionFactory" ref="jmsConnectionFactory" />
|
|
<property name="templateConnectionFactory" ref="jmsConnectionFactory" />
|
|
<property name="disableReplyTo" value="true" />
|
|
<property name="deliveryPersistent" value="false" />
|
|
|
|
<!-- <property name="transacted" value="true" /> <property name="acknowledgementModeName"
|
|
value="TRANSACTED"/> <property name="transactionManager" ref="jmsReceiveTransactionManager"
|
|
/> -->
|
|
</bean>
|
|
|
|
<bean id="jmsClientId" class="com.raytheon.uf.common.util.SystemUtil" factory-method="getClientID">
|
|
<constructor-arg value="RegistryWebServices" />
|
|
</bean>
|
|
|
|
<bean id="jmsConnectionInfo"
|
|
class="com.raytheon.uf.common.jms.JMSConnectionInfo">
|
|
<constructor-arg value="${BROKER_HOST}"/>
|
|
<constructor-arg value="${BROKER_PORT}"/>
|
|
<constructor-arg value="${JMS_VIRTUALHOST}"/>
|
|
<constructor-arg value="${BROKER_HTTP}"/>
|
|
<constructor-arg>
|
|
<map>
|
|
<entry key="jms.prefetchPolicy.all" value="0"/>
|
|
<entry key="jms.connectTimeout" value="5000"/>
|
|
<entry key="jms.forceSyncSend" value="true"/>
|
|
<entry key="provider.futureType" value="balanced" />
|
|
<entry key="jms.clientID" value-ref="jmsClientId"/>
|
|
</map>
|
|
</constructor-arg>
|
|
</bean>
|
|
|
|
<bean id="qpidUfConnectionFactory" class="com.raytheon.uf.common.jms.qpid.QpidUFConnectionFactory">
|
|
<constructor-arg ref="jmsConnectionInfo"/>
|
|
</bean>
|
|
|
|
<bean id="jmsConnectionFactory" class="org.springframework.jms.connection.CachingConnectionFactory">
|
|
<constructor-arg ref="qpidUfConnectionFactory"/>
|
|
<!-- The value of 50 is arbitrary. Can be tweaked later based on
|
|
observed frequency of session creation -->
|
|
<property name="sessionCacheSize" value="50"/>
|
|
</bean>
|
|
|
|
<bean id="QueryServiceWrapper"
|
|
class="com.raytheon.uf.edex.registry.ebxml.services.query.QueryManagerImplWrapper">
|
|
<constructor-arg ref="queryServiceImpl" />
|
|
</bean>
|
|
<bean id="NotificationListenerServiceWrapper"
|
|
class="com.raytheon.uf.edex.registry.ebxml.services.notification.NotificationListenerImplWrapper">
|
|
<constructor-arg ref="notificationServiceImpl" />
|
|
</bean>
|
|
<bean id="LifecycleManagerServiceWrapper"
|
|
class="com.raytheon.uf.edex.registry.ebxml.services.lifecycle.LifecycleManagerImplWrapper">
|
|
<constructor-arg ref="lcmServiceImpl" />
|
|
</bean>
|
|
<bean id="ValidatorServiceWrapper"
|
|
class="com.raytheon.uf.edex.registry.ebxml.services.validator.ValidatorImplWrapper">
|
|
<constructor-arg ref="validatorServiceImpl" />
|
|
</bean>
|
|
<bean id="CatalogerServiceWrapper"
|
|
class="com.raytheon.uf.edex.registry.ebxml.services.cataloger.CatalogerImplWrapper">
|
|
<constructor-arg ref="catalogerServiceImpl" />
|
|
</bean>
|
|
|
|
<!-- SOAP Service definitions -->
|
|
<jaxws:server id="QueryService" address="/queryManager">
|
|
<jaxws:serviceBean>
|
|
<ref bean="QueryServiceWrapper" />
|
|
</jaxws:serviceBean>
|
|
<jaxws:inInterceptors>
|
|
<ref bean="authenticationInterceptor" />
|
|
<ref bean="xacmlInterceptor" />
|
|
</jaxws:inInterceptors>
|
|
<jaxws:outInterceptors>
|
|
<ref bean="securityOutInterceptor" />
|
|
</jaxws:outInterceptors>
|
|
</jaxws:server>
|
|
<jaxws:server id="NotificationListenerService" address="/notificationListener">
|
|
<jaxws:serviceBean>
|
|
<ref bean="NotificationListenerServiceWrapper" />
|
|
</jaxws:serviceBean>
|
|
<jaxws:inInterceptors>
|
|
<ref bean="authenticationInterceptor" />
|
|
<ref bean="xacmlInterceptor" />
|
|
</jaxws:inInterceptors>
|
|
<jaxws:outInterceptors>
|
|
<ref bean="securityOutInterceptor" />
|
|
</jaxws:outInterceptors>
|
|
</jaxws:server>
|
|
<jaxws:server id="LifecycleManagerService" address="/lifecycleManager">
|
|
<jaxws:serviceBean>
|
|
<ref bean="LifecycleManagerServiceWrapper" />
|
|
</jaxws:serviceBean>
|
|
<jaxws:inInterceptors>
|
|
<ref bean="authenticationInterceptor" />
|
|
<ref bean="xacmlInterceptor" />
|
|
</jaxws:inInterceptors>
|
|
<jaxws:outInterceptors>
|
|
<ref bean="securityOutInterceptor" />
|
|
</jaxws:outInterceptors>
|
|
</jaxws:server>
|
|
<jaxws:server id="ValidatorService" address="/validator">
|
|
<jaxws:serviceBean>
|
|
<ref bean="ValidatorServiceWrapper" />
|
|
</jaxws:serviceBean>
|
|
<jaxws:inInterceptors>
|
|
<ref bean="authenticationInterceptor" />
|
|
<ref bean="xacmlInterceptor" />
|
|
</jaxws:inInterceptors>
|
|
<jaxws:outInterceptors>
|
|
<ref bean="securityOutInterceptor" />
|
|
</jaxws:outInterceptors>
|
|
</jaxws:server>
|
|
<jaxws:server id="CatalogerService" address="/cataloger">
|
|
<jaxws:serviceBean>
|
|
<ref bean="CatalogerServiceWrapper" />
|
|
</jaxws:serviceBean>
|
|
<jaxws:inInterceptors>
|
|
<ref bean="authenticationInterceptor" />
|
|
<ref bean="xacmlInterceptor" />
|
|
</jaxws:inInterceptors>
|
|
<jaxws:outInterceptors>
|
|
<ref bean="securityOutInterceptor" />
|
|
</jaxws:outInterceptors>
|
|
</jaxws:server>
|
|
<!-- End Soap Service Definitions -->
|
|
|
|
<!-- REST Service Definitions -->
|
|
<jaxrs:server id="registryRestServices" address="/rest">
|
|
<jaxrs:inInterceptors>
|
|
<ref bean="authenticationInterceptor" />
|
|
<ref bean="xacmlInterceptor" />
|
|
</jaxrs:inInterceptors>
|
|
<jaxrs:serviceBeans>
|
|
<ref bean="registryObjectsRestService" />
|
|
<ref bean="repositoryObjectsRestService" />
|
|
<ref bean="queryProtocolRestService" />
|
|
<ref bean="registryUsers" />
|
|
<ref bean="registryDataAccessService" />
|
|
<ref bean="registryAvailabilityService" />
|
|
<ref bean="RegistryFederationManager" />
|
|
<ref bean="defineRegistryQuery" />
|
|
</jaxrs:serviceBeans>
|
|
</jaxrs:server>
|
|
<!-- End REST Endpoint definitions -->
|
|
</beans> |