subs = this.template
+ .loadAll(SubscriptionType.class);
+ for (SubscriptionType sub : subs) {
+ try {
+ /*
+ * FIXME: This is just a quick and dirty way of fully
+ * initializing all the fields of the subscription. Since this
+ * query happens relatively infrequently, having this operation
+ * here does not pose any sort of performance penalty.
+ * Obviously, a better solution needs to be devised in the
+ * future
+ */
+ subscriptionJaxbManager.marshalToXml(sub);
+ } catch (JAXBException e) {
+ throw new EbxmlRegistryException("Error initializing bean!", e);
+ }
+ }
+ return subs;
+ }
+
/**
* Retrieves the fully populated subscription object
*
diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/RegistryServiceInInterceptor.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/RegistryServiceInInterceptor.java
new file mode 100644
index 0000000000..74c802fb11
--- /dev/null
+++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/RegistryServiceInInterceptor.java
@@ -0,0 +1,91 @@
+/**
+ * This software was developed and / or modified by Raytheon Company,
+ * pursuant to Contract DG133W-05-CQ-1067 with the US Government.
+ *
+ * U.S. EXPORT CONTROLLED TECHNICAL DATA
+ * This software product contains export-restricted data whose
+ * export/transfer/disclosure is restricted by U.S. law. Dissemination
+ * to non-U.S. persons whether in the United States or abroad requires
+ * an export license or other authorization.
+ *
+ * Contractor Name: Raytheon Company
+ * Contractor Address: 6825 Pine Street, Suite 340
+ * Mail Stop B8
+ * Omaha, NE 68106
+ * 402.291.0100
+ *
+ * See the AWIPS II Master Rights File ("Master Rights File.pdf") for
+ * further licensing information.
+ **/
+package com.raytheon.uf.edex.registry.ebxml.services;
+
+import java.util.List;
+import java.util.Map;
+
+import javax.servlet.http.HttpServletRequest;
+
+import org.apache.cxf.interceptor.Fault;
+import org.apache.cxf.message.Message;
+import org.apache.cxf.phase.AbstractPhaseInterceptor;
+import org.apache.cxf.phase.Phase;
+import org.apache.cxf.transport.http.AbstractHTTPDestination;
+
+import com.raytheon.uf.common.registry.ebxml.RegistryUtil;
+import com.raytheon.uf.common.status.IUFStatusHandler;
+import com.raytheon.uf.common.status.UFStatus;
+import com.raytheon.uf.common.util.CollectionUtil;
+
+/**
+ *
+ * Service interceptor for logging web service and rest calls
+ *
+ *
+ *
+ * SOFTWARE HISTORY
+ *
+ * Date Ticket# Engineer Description
+ * ------------ ---------- ----------- --------------------------
+ * 9/5/2013 1538 bphillip Initial implementation
+ *
+ *
+ * @author bphillip
+ * @version 1
+ */
+public class RegistryServiceInInterceptor extends
+ AbstractPhaseInterceptor {
+ /** The logger */
+ private static final IUFStatusHandler statusHandler = UFStatus
+ .getHandler(RegistryServiceInInterceptor.class);
+
+ public RegistryServiceInInterceptor() {
+ super(Phase.RECEIVE);
+ }
+
+ @SuppressWarnings("unchecked")
+ @Override
+ public void handleMessage(Message message) throws Fault {
+ StringBuilder logMessage = new StringBuilder();
+ HttpServletRequest request = (HttpServletRequest) message
+ .get(AbstractHTTPDestination.HTTP_REQUEST);
+ Map> headers = (Map>) message
+ .get(Message.PROTOCOL_HEADERS);
+ List callingRegistryList = headers
+ .get(RegistryUtil.CALLING_REGISTRY_SOAP_HEADER_NAME);
+ if (request.getRequestURI().startsWith("/rest")) {
+ logMessage.append("REST: ");
+ } else {
+ logMessage.append("WS: ");
+ }
+ logMessage.append("Request from [");
+ if (CollectionUtil.isNullOrEmpty(callingRegistryList)) {
+ logMessage.append(request.getRemoteAddr()).append("]: ")
+ .append(request.getMethod()).append(" ")
+ .append(request.getRequestURI());
+ } else {
+ logMessage.append(callingRegistryList.get(0)).append("]: ")
+ .append(request.getMethod()).append(" ")
+ .append(request.getRequestURI());
+ }
+ statusHandler.info(logMessage.toString());
+ }
+}
diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/NotificationListenerImpl.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/NotificationListenerImpl.java
index 52111d60f6..2a5fd37b0a 100644
--- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/NotificationListenerImpl.java
+++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/NotificationListenerImpl.java
@@ -112,6 +112,7 @@ public class NotificationListenerImpl implements NotificationListener {
@Override
public void onNotification(NotificationType notification) {
+
String clientBaseURL = EbxmlObjectUtil.getClientHost(wsContext);
RegistryType sourceRegistry = registryDao
.getRegistryByBaseURL(clientBaseURL);
diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/RegistryNotificationManager.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/RegistryNotificationManager.java
index d66b3cbdd6..f891c43ae5 100644
--- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/RegistryNotificationManager.java
+++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/RegistryNotificationManager.java
@@ -154,7 +154,7 @@ public class RegistryNotificationManager {
SubscriptionNotificationListeners notificationListeners,
final List objectsOfInterest)
throws EbxmlRegistryException {
- int SIZE_LIMIT = 100;
+ int SIZE_LIMIT = 10;
final List listeners = notificationListeners.listeners;
final SubscriptionType subscription = notificationListeners.subscription;
@@ -167,6 +167,7 @@ public class RegistryNotificationManager {
int subListCount = eventsOfInterest.size() / SIZE_LIMIT;
int lastListSize = eventsOfInterest.size() % SIZE_LIMIT;
for (int i = 0; i < subListCount; i++) {
+
NotificationType notification = getNotification(
subscription,
listener.address,
diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/RegistrySubscriptionManager.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/RegistrySubscriptionManager.java
index ca2d8d1736..275ccd67f8 100644
--- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/RegistrySubscriptionManager.java
+++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/notification/RegistrySubscriptionManager.java
@@ -46,7 +46,11 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.QueryType;
import oasis.names.tc.ebxml.regrep.xsd.rim.v4.SlotType;
import oasis.names.tc.ebxml.regrep.xsd.rim.v4.SubscriptionType;
+import org.springframework.beans.BeansException;
+import org.springframework.context.ApplicationContext;
+import org.springframework.context.ApplicationContextAware;
import org.springframework.stereotype.Component;
+import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
@@ -66,6 +70,7 @@ import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.common.time.util.TimeUtil;
import com.raytheon.uf.edex.registry.ebxml.dao.SubscriptionDao;
import com.raytheon.uf.edex.registry.ebxml.exception.EbxmlRegistryException;
+import com.raytheon.uf.edex.registry.ebxml.init.RegistryInitializedListener;
import com.raytheon.uf.edex.registry.ebxml.services.IRegistrySubscriptionManager;
import com.raytheon.uf.edex.registry.ebxml.services.query.QueryManagerImpl;
import com.raytheon.uf.edex.registry.ebxml.util.EbxmlObjectUtil;
@@ -85,6 +90,7 @@ import com.raytheon.uf.edex.registry.ebxml.util.EbxmlObjectUtil;
* 5/21/2013 2022 bphillip Made logging less verbose. added running boolean so subscriptions are not process on every single
* event.
* 6/4/2013 2022 bphillip Changed slot type of subscription last run time. Longs were being truncated when casting to ints
+ * 9/5/2013 1538 bphillip Changed processing of each subscription to be in their own transaction. Subscriptions are now loaded on startup
*
*
* @author bphillip
@@ -93,7 +99,8 @@ import com.raytheon.uf.edex.registry.ebxml.util.EbxmlObjectUtil;
@Transactional
@Component
public class RegistrySubscriptionManager implements
- IRegistrySubscriptionManager {
+ IRegistrySubscriptionManager, ApplicationContextAware,
+ RegistryInitializedListener {
/** The logger instance */
private static final IUFStatusHandler statusHandler = UFStatus
@@ -162,6 +169,8 @@ public class RegistrySubscriptionManager implements
private final ConcurrentMap listeners = new ConcurrentHashMap();
+ private ApplicationContext applicationContext;
+
public RegistrySubscriptionManager() {
}
@@ -171,6 +180,22 @@ public class RegistrySubscriptionManager implements
this.subscriptionProcessingEnabled = subscriptionProcessingEnabled;
}
+ @Override
+ public void executeAfterRegistryInit() throws EbxmlRegistryException {
+ for (SubscriptionType subscription : subscriptionDao.eagerLoadAll()) {
+ statusHandler.info("Adding Subscription: " + subscription.getId());
+ addSubscriptionListener(subscription);
+ }
+ }
+
+ private void addSubscriptionListener(SubscriptionType subscription)
+ throws EbxmlRegistryException {
+ final List subscriptionListeners = getNotificationListenersForSubscription(subscription);
+ listeners.put(subscription.getId(),
+ new SubscriptionNotificationListeners(subscription,
+ subscriptionListeners));
+ }
+
/**
* Adds subscription notification listeners for any subscriptions.
*/
@@ -183,9 +208,8 @@ public class RegistrySubscriptionManager implements
try {
final SubscriptionType subscription = subscriptionDao
.eagerGetById(id);
- final List subscriptionListeners = getNotificationListenersForSubscription(subscription);
- listeners.put(id, new SubscriptionNotificationListeners(
- subscription, subscriptionListeners));
+ addSubscriptionListener(subscription);
+
} catch (EbxmlRegistryException e) {
statusHandler.handle(Priority.PROBLEM, e.getLocalizedMessage(),
e);
@@ -305,28 +329,19 @@ public class RegistrySubscriptionManager implements
.values();
for (SubscriptionNotificationListeners subNotificationListener : subs) {
- SubscriptionType sub = subscriptionDao
- .getById(subNotificationListener.subscription.getId());
- try {
- if (subscriptionShouldRun(sub)) {
- try {
- processSubscription(subNotificationListener);
- } catch (Throwable e) {
- statusHandler.error(
- "Errors occurred while processing subscription ["
- + sub.getId() + "]", e);
- }
- } else {
- statusHandler
- .info("Skipping subscription ["
- + sub.getId()
- + "]. Required notification frequency interval has not elapsed.");
- }
- } catch (EbxmlRegistryException e) {
- statusHandler.error(
- "Error processing subscription [" + sub.getId()
- + "]", e);
+ if (subscriptionDao
+ .getById(subNotificationListener.subscription.getId()) == null) {
+ statusHandler
+ .info("Registry subscription removed. Cancelling processing of subscription: "
+ + subNotificationListener.subscription
+ .getId());
+ continue;
}
+ RegistrySubscriptionManager myself = (RegistrySubscriptionManager) applicationContext
+ .getBean("RegistrySubscriptionManager");
+ myself.processSubscription(subNotificationListener.subscription
+ .getId());
+
}
if (!subs.isEmpty()) {
statusHandler.info("Registry subscriptions processed in "
@@ -422,20 +437,36 @@ public class RegistrySubscriptionManager implements
* @throws MsgRegistryException
* @throws EbxmlRegistryException
*/
- private void processSubscription(
- final SubscriptionNotificationListeners subscriptionNotificationsListeners)
- throws MsgRegistryException, EbxmlRegistryException {
- SubscriptionType subscription = subscriptionDao
- .getById(subscriptionNotificationsListeners.subscription
- .getId());
- updateLastRunTime(subscription, TimeUtil.currentTimeMillis());
- statusHandler.info("Processing subscription [" + subscription.getId()
- + "]...");
-
- List objectsOfInterest = getObjectsOfInterest(subscription);
- if (!objectsOfInterest.isEmpty()) {
- notificationManager.sendNotifications(
- subscriptionNotificationsListeners, objectsOfInterest);
+ @Transactional(propagation = Propagation.REQUIRES_NEW)
+ public void processSubscription(final String subscriptionName) {
+ try {
+ SubscriptionType subscription = subscriptionDao
+ .getById(subscriptionName);
+ if (subscription == null) {
+ statusHandler
+ .info("Registry subscription removed. Cancelling processing of subscription: "
+ + subscriptionName);
+ return;
+ }
+ if (!subscriptionShouldRun(subscription)) {
+ statusHandler
+ .info("Skipping subscription ["
+ + subscription.getId()
+ + "]. Required notification frequency interval has not elapsed.");
+ return;
+ }
+ statusHandler.info("Processing subscription [" + subscriptionName
+ + "]...");
+ List objectsOfInterest = getObjectsOfInterest(subscription);
+ if (!objectsOfInterest.isEmpty()) {
+ notificationManager.sendNotifications(
+ listeners.get(subscriptionName), objectsOfInterest);
+ }
+ updateLastRunTime(subscription, TimeUtil.currentTimeMillis());
+ } catch (Throwable e) {
+ statusHandler.error(
+ "Errors occurred while processing subscription ["
+ + subscriptionName + "]", e);
}
}
@@ -496,4 +527,11 @@ public class RegistrySubscriptionManager implements
INotificationListenerFactory notificationListenerFactory) {
this.notificationListenerFactory = notificationListenerFactory;
}
+
+ @Override
+ public void setApplicationContext(ApplicationContext applicationContext)
+ throws BeansException {
+ this.applicationContext = applicationContext;
+ }
+
}
diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/QueryManagerImpl.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/QueryManagerImpl.java
index 113a1d27d7..ecc82d0d98 100644
--- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/QueryManagerImpl.java
+++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/QueryManagerImpl.java
@@ -98,6 +98,7 @@ import com.raytheon.uf.edex.registry.ebxml.util.EbxmlObjectUtil;
* 3/18/2013 1802 bphillip Modified to use transaction boundaries and spring injection
* Apr 24, 2013 1910 djohnson RegistryResponseStatus is now an enum.
* Jun 24, 2013 2106 djohnson Transaction must already be open.
+ * 9/5/2013 1538 bphillip Removed log message
*
*
*
@@ -548,8 +549,6 @@ public class QueryManagerImpl implements QueryManager {
public QueryResponse executeQuery(ResponseOptionType responseOption,
QueryType queryType, int depth, boolean matchOlderVersions,
int maxResults, int startIndex) throws MsgRegistryException {
- statusHandler
- .info("Received internal request for query using specified values");
QueryRequest queryRequest = EbxmlObjectUtil.queryObjectFactory
.createQueryRequest();
queryRequest.setResponseOption(responseOption);
diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/types/AbstractEbxmlQuery.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/types/AbstractEbxmlQuery.java
index 22a0e6ac04..03ef530a7b 100644
--- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/types/AbstractEbxmlQuery.java
+++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/query/types/AbstractEbxmlQuery.java
@@ -56,6 +56,7 @@ import com.raytheon.uf.edex.registry.ebxml.util.EbxmlObjectUtil;
* 3/18/2013 1802 bphillip Modified to use transaction boundaries and spring dao injection
* 4/9/2013 1802 bphillip Refactor of registry query handling
* Jun 24, 2013 2106 djohnson Requires a transaction to be open, will not create one.
+ * 9/5/2013 1538 bphillip Removed log message
*
*
*
@@ -108,7 +109,6 @@ public abstract class AbstractEbxmlQuery implements IRegistryQuery {
}
query(queryRequest.getQuery(), queryResponse, client);
- statusHandler.info("Query completed.");
}
protected QueryParameters getParameterMap(Collection slots,
diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/rest/RegistryAvailableRestService.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/rest/RegistryAvailableRestService.java
index 8807487557..5037e79fd8 100644
--- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/rest/RegistryAvailableRestService.java
+++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/services/rest/RegistryAvailableRestService.java
@@ -28,8 +28,6 @@ import org.springframework.transaction.annotation.Transactional;
import com.raytheon.uf.common.registry.constants.RegistryAvailability;
import com.raytheon.uf.common.registry.services.rest.IRegistryAvailableRestService;
-import com.raytheon.uf.common.status.IUFStatusHandler;
-import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.edex.registry.ebxml.dao.DbInit;
/**
@@ -43,6 +41,7 @@ import com.raytheon.uf.edex.registry.ebxml.dao.DbInit;
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* 5/21/2013 2022 bphillip Initial implementation
+ * 9/5/2013 1538 bphillip Removed log message
*
*
* @author bphillip
@@ -54,10 +53,6 @@ import com.raytheon.uf.edex.registry.ebxml.dao.DbInit;
public class RegistryAvailableRestService implements
IRegistryAvailableRestService {
- /** The logger */
- private static final IUFStatusHandler statusHandler = UFStatus
- .getHandler(RegistryAvailableRestService.class);
-
/**
* Creates a new RegistryAvailableRestService
*/
@@ -68,7 +63,6 @@ public class RegistryAvailableRestService implements
@GET
@Produces("text/plain")
public String isRegistryAvailable() {
- statusHandler.info("Received request checking registry availability");
if (DbInit.isDbInitialized()) {
return RegistryAvailability.AVAILABLE;
} else {
diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/util/EbxmlObjectUtil.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/util/EbxmlObjectUtil.java
index e966f29a31..ff3eed6808 100644
--- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/util/EbxmlObjectUtil.java
+++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/util/EbxmlObjectUtil.java
@@ -28,6 +28,7 @@ import java.util.Collections;
import java.util.Enumeration;
import java.util.GregorianCalendar;
import java.util.List;
+import java.util.Map;
import java.util.UUID;
import javax.servlet.http.HttpServletRequest;
@@ -47,11 +48,8 @@ import oasis.names.tc.ebxml.regrep.xsd.rim.v4.SlotType;
import oasis.names.tc.ebxml.regrep.xsd.rim.v4.StringValueType;
import oasis.names.tc.ebxml.regrep.xsd.rim.v4.ValueType;
-import org.apache.cxf.headers.Header;
-import org.apache.cxf.helpers.CastUtils;
-import org.w3c.dom.Element;
-
import com.raytheon.uf.common.registry.ebxml.RegistryUtil;
+import com.raytheon.uf.common.util.CollectionUtil;
import com.raytheon.uf.edex.registry.ebxml.exception.EbxmlRegistryException;
/**
@@ -372,28 +370,29 @@ public class EbxmlObjectUtil {
if (mc == null) {
return "INTERNAL";
}
- String ip = null;
- List headerList = CastUtils.cast((List>) mc
- .get(Header.HEADER_LIST));
- for (Header header : headerList) {
- if (header.getObject() instanceof Element) {
- if (header.getName().getLocalPart()
- .equals(RegistryUtil.CALLING_REGISTRY_SOAP_HEADER_NAME)) {
- return ((Element) header.getObject()).getTextContent();
- }
+ String clientHost = null;
+
+ @SuppressWarnings("unchecked")
+ Map> requestHeaders = (Map>) mc
+ .get(MessageContext.HTTP_REQUEST_HEADERS);
+ List callingRegistryHeader = requestHeaders
+ .get(RegistryUtil.CALLING_REGISTRY_SOAP_HEADER_NAME);
+ if (!CollectionUtil.isNullOrEmpty(callingRegistryHeader)) {
+ clientHost = callingRegistryHeader.get(0);
+ } else {
+ HttpServletRequest request = (HttpServletRequest) mc
+ .get(MessageContext.SERVLET_REQUEST);
+
+ for (int i = 0; (i < 5)
+ && (clientHost == null || clientHost.isEmpty() || "unknown"
+ .equalsIgnoreCase(clientHost)); i++) {
+ clientHost = request.getHeader(HTTP_HEADERS.get(i));
+ }
+ if (clientHost == null || clientHost.length() == 0
+ || "unknown".equalsIgnoreCase(clientHost)) {
+ clientHost = request.getRemoteAddr();
}
}
- HttpServletRequest request = (HttpServletRequest) mc
- .get(MessageContext.SERVLET_REQUEST);
-
- for (int i = 0; (i < 5)
- && (ip == null || ip.isEmpty() || "unknown"
- .equalsIgnoreCase(ip)); i++) {
- ip = request.getHeader(HTTP_HEADERS.get(i));
- }
- if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
- ip = request.getRemoteAddr();
- }
- return ip;
+ return clientHost;
}
}
diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/WEB-INF/web.xml b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/WEB-INF/web.xml
index fb7f619285..3c1df590b9 100644
--- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/WEB-INF/web.xml
+++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/WEB-INF/web.xml
@@ -11,30 +11,23 @@
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
Data Delivery Web Services
-
-
- webAppRootKey
- registryEbxml
-
-
+
+
+ webAppRootKey
+ registryEbxml
+
+
contextConfigLocation
/webServiceBeans.xml
- org.springframework.web.context.ContextLoaderListener
+
+ org.springframework.web.context.ContextLoaderListener
+
-
- QoSFilter
- org.eclipse.jetty.servlets.QoSFilter
-
- maxRequests
- 100
-
-
-
hibernateFilter
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
@@ -51,12 +44,6 @@
hibernateFilter
/*
-
-
- QoSFilter
- /*
-
-
RegistryWebServiceServlet
diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/webServiceBeans.xml b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/webServiceBeans.xml
index 47e13c8468..0c64d45399 100644
--- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/webServiceBeans.xml
+++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/webServiceBeans.xml
@@ -24,6 +24,9 @@
+
+
@@ -48,6 +51,9 @@
+
+
+
@@ -55,30 +61,45 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -87,8 +108,11 @@
+
+
+
-
+