awips2/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/webServiceBeans.xml
2018-06-20 17:39:08 -06:00

217 lines
No EOL
9.3 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="errorHandler" class="org.apache.camel.builder.LoggingErrorHandlerBuilder" />
<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_NONE" />
<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="jmsPooledConnectionFactory" />
<property name="templateConnectionFactory" ref="jmsPooledConnectionFactory" />
<property name="destinationResolver" ref="qpidNoDurableResolver" />
<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="jmsPooledConnectionFactory" class="com.raytheon.uf.common.jms.JmsPooledConnectionFactory">
<constructor-arg ref="amqConnectionFactory" />
<property name="provider" value="QPID" />
<property name="reconnectInterval" value="5000" />
<!-- After resource has been closed by thread keep it allocated for another
2 minutes in case thread needs it again -->
<property name="resourceRetention" value="120000" />
</bean>
<bean id="amqConnectionFactory" class="org.apache.qpid.client.AMQConnectionFactory">
<constructor-arg type="java.lang.String"
value="amqp://guest:guest@/${JMS_VIRTUALHOST}?brokerlist='${JMS_SERVER}?retries='9999'&amp;heartbeat='0'&amp;connecttimeout='5000'&amp;connectdelay='5000''&amp;maxprefetch='0'&amp;sync_publish='all'&amp;sync_ack='true'" />
</bean>
<bean id="qpidNoDurableResolver"
class="com.raytheon.uf.edex.esb.camel.spring.QpidDestinationNameResolver">
<property name="queueNamePrefix" value="direct://amq.direct/" />
<property name="queueNamePostfix" value="?durable='false'" />
</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>