Author: alessio.soldano(a)jboss.com
Date: 2010-12-02 05:44:14 -0500 (Thu, 02 Dec 2010)
New Revision: 13376
Added:
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/DescriptorParser.java
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/jms/JMSDescriptorParser.java
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/webservices/WebservicesDescriptorParser.java
Modified:
spi/trunk/pom.xml
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/AbstractHandlerChainsMetaDataParser.java
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/DescriptorProcessor.java
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/ParserConstants.java
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/j2ee/serviceref/UnifiedHandlerChainsMetaDataParser.java
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/jms/JMSDescriptorProcessor.java
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/webservices/WebservicesDescriptorProcessor.java
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/webservices/WebservicesFactory.java
spi/trunk/src/main/java/org/jboss/wsf/spi/util/StAXUtils.java
Log:
[JBWS-3169]
- removed dependency on JBossXB
- added new DescriptorParser interfaces
- deprecated old DescriptorProcessor interfaces (this can't removed till we deploy
against AS 6 though, they're not used anymore, hence the methods referencing XB are
commented out)
- modified webservices.xml / handler StAX parsers to support JSR 109 v.1.1 (basically the
J2EE namespaces instead of the JAVAEE ones)
Modified: spi/trunk/pom.xml
===================================================================
--- spi/trunk/pom.xml 2010-12-02 10:34:06 UTC (rev 13375)
+++ spi/trunk/pom.xml 2010-12-02 10:44:14 UTC (rev 13376)
@@ -61,18 +61,6 @@
<version>${jboss-logging-spi.version}</version>
<scope>provided</scope>
</dependency>
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jbossxb</artifactId>
- <version>${jbossxb.version}</version>
- <scope>provided</scope>
- <exclusions>
- <exclusion>
- <groupId>sun-jaxb</groupId>
- <artifactId>jaxb-api</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
<!-- test dependencies -->
<dependency>
Modified:
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/AbstractHandlerChainsMetaDataParser.java
===================================================================
---
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/AbstractHandlerChainsMetaDataParser.java 2010-12-02
10:34:06 UTC (rev 13375)
+++
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/AbstractHandlerChainsMetaDataParser.java 2010-12-02
10:44:14 UTC (rev 13376)
@@ -42,7 +42,7 @@
*/
public abstract class AbstractHandlerChainsMetaDataParser
{
- protected UnifiedHandlerChainsMetaData parseHandlerChains(XMLStreamReader reader)
throws XMLStreamException
+ protected UnifiedHandlerChainsMetaData parseHandlerChains(XMLStreamReader reader,
String nsUri) throws XMLStreamException
{
UnifiedHandlerChainsMetaData handlerChains = new UnifiedHandlerChainsMetaData();
while (reader.hasNext())
@@ -50,7 +50,7 @@
switch (reader.nextTag())
{
case XMLStreamConstants.END_ELEMENT : {
- if (match(reader, QNAME_HANDLER_CHAINS))
+ if (match(reader, nsUri, HANDLER_CHAINS))
{
return handlerChains;
}
@@ -60,8 +60,8 @@
}
}
case XMLStreamConstants.START_ELEMENT : {
- if (match(reader, QNAME_HANDLER_CHAIN)) {
- handlerChains.addHandlerChain(parseHandlerChain(reader,
handlerChains));
+ if (match(reader, nsUri, HANDLER_CHAIN)) {
+ handlerChains.addHandlerChain(parseHandlerChain(reader, nsUri,
handlerChains));
}
else
{
@@ -73,7 +73,7 @@
throw new IllegalStateException("Reached end of xml document
unexpectedly");
}
- private UnifiedHandlerChainMetaData parseHandlerChain(XMLStreamReader reader,
UnifiedHandlerChainsMetaData handlerChains) throws XMLStreamException
+ private UnifiedHandlerChainMetaData parseHandlerChain(XMLStreamReader reader, String
nsUri, UnifiedHandlerChainsMetaData handlerChains) throws XMLStreamException
{
UnifiedHandlerChainMetaData handlerChain = new
UnifiedHandlerChainMetaData(handlerChains);
while (reader.hasNext())
@@ -81,7 +81,7 @@
switch (reader.nextTag())
{
case XMLStreamConstants.END_ELEMENT : {
- if (match(reader, QNAME_HANDLER_CHAIN))
+ if (match(reader, nsUri, HANDLER_CHAIN))
{
return handlerChain;
}
@@ -91,20 +91,20 @@
}
}
case XMLStreamConstants.START_ELEMENT : {
- if (match(reader, QNAME_CHAIN_PORT_PATTERN))
+ if (match(reader, nsUri, CHAIN_PORT_PATTERN))
{
handlerChain.setPortNamePattern(elementAsQName(reader));
}
- else if (match(reader, QNAME_CHAIN_SERVICE_PATTERN))
+ else if (match(reader, nsUri, CHAIN_SERVICE_PATTERN))
{
handlerChain.setServiceNamePattern(elementAsQName(reader));
}
- else if(match(reader, QNAME_CHAIN_PROTOCOL_BINDING))
+ else if(match(reader, nsUri, CHAIN_PROTOCOL_BINDING))
{
handlerChain.setProtocolBindings(elementAsString(reader));
}
- else if (match(reader, QNAME_HANDLER)) {
- handlerChain.addHandler(parseHandler(reader, handlerChain));
+ else if (match(reader, nsUri, HANDLER)) {
+ handlerChain.addHandler(parseHandler(reader, nsUri, handlerChain));
}
else
{
@@ -116,15 +116,20 @@
throw new IllegalStateException("Reached end of xml document
unexpectedly");
}
- private UnifiedHandlerMetaData parseHandler(XMLStreamReader reader,
UnifiedHandlerChainMetaData handlerChain) throws XMLStreamException
+ protected UnifiedHandlerMetaData parseHandler(XMLStreamReader reader, String nsUri)
throws XMLStreamException
{
+ return parseHandler(reader, nsUri, null);
+ }
+
+ private UnifiedHandlerMetaData parseHandler(XMLStreamReader reader, String nsUri,
UnifiedHandlerChainMetaData handlerChain) throws XMLStreamException
+ {
UnifiedHandlerMetaData handler = new UnifiedHandlerMetaData(handlerChain);
while (reader.hasNext())
{
switch (reader.nextTag())
{
case XMLStreamConstants.END_ELEMENT : {
- if (match(reader, QNAME_HANDLER))
+ if (match(reader, nsUri, HANDLER))
{
return handler;
}
@@ -134,21 +139,21 @@
}
}
case XMLStreamConstants.START_ELEMENT : {
- if (match(reader, QNAME_HANDLER_NAME))
+ if (match(reader, nsUri, HANDLER_NAME))
{
handler.setHandlerName(elementAsString(reader));
}
- else if (match(reader, QNAME_HANDLER_CLASS))
+ else if (match(reader, nsUri, HANDLER_CLASS))
{
handler.setHandlerClass(elementAsString(reader));
}
- else if (match(reader, QNAME_HANDLER_PARAM)) {
- handler.addInitParam(parseInitParam(reader));
+ else if (match(reader, nsUri, HANDLER_PARAM)) {
+ handler.addInitParam(parseInitParam(reader, nsUri));
}
- else if (match(reader, QNAME_HANDLER_SOAP_ROLE)) {
+ else if (match(reader, nsUri, HANDLER_SOAP_ROLE)) {
handler.addSoapRole(elementAsString(reader));
}
- else if (match(reader, QNAME_HANDLER_SOAP_HEADER)) {
+ else if (match(reader, nsUri, HANDLER_SOAP_HEADER)) {
handler.addSoapHeader(elementAsQName(reader));
}
else
@@ -161,7 +166,7 @@
throw new IllegalStateException("Reached end of xml document
unexpectedly");
}
- private UnifiedInitParamMetaData parseInitParam(XMLStreamReader reader) throws
XMLStreamException
+ private UnifiedInitParamMetaData parseInitParam(XMLStreamReader reader, String nsUri)
throws XMLStreamException
{
UnifiedInitParamMetaData initParam = new UnifiedInitParamMetaData();
while (reader.hasNext())
@@ -169,7 +174,7 @@
switch (reader.nextTag())
{
case XMLStreamConstants.END_ELEMENT : {
- if (match(reader, QNAME_HANDLER_PARAM))
+ if (match(reader, nsUri, HANDLER_PARAM))
{
return initParam;
}
@@ -179,11 +184,11 @@
}
}
case XMLStreamConstants.START_ELEMENT : {
- if (match(reader, QNAME_HANDLER_PARAM_NAME))
+ if (match(reader, nsUri, HANDLER_PARAM_NAME))
{
initParam.setParamName(elementAsString(reader));
}
- else if (match(reader, QNAME_HANDLER_PARAM_VALUE))
+ else if (match(reader, nsUri, HANDLER_PARAM_VALUE))
{
initParam.setParamValue(elementAsString(reader));
}
Added: spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/DescriptorParser.java
===================================================================
--- spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/DescriptorParser.java
(rev 0)
+++ spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/DescriptorParser.java 2010-12-02
10:44:14 UTC (rev 13376)
@@ -0,0 +1,48 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2010, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.wsf.spi.metadata;
+
+import java.net.URL;
+
+/**
+ *
+ *
+ * @author <a href="mailto:ropalka@redhat.com">Richard Opalka</a>
+ * @author alessio.soldano(a)jboss.com
+ */
+public interface DescriptorParser<T>
+{
+ /**
+ * Descriptor name to parse and process.
+ * @return descriptor name to consume.
+ */
+ String getDescriptorName();
+
+ /**
+ * Parses the descriptor at the provided URL and returns
+ * the corresponding object (metadata)
+ *
+ * @param url
+ * @return
+ */
+ T parse(final URL url);
+}
Modified: spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/DescriptorProcessor.java
===================================================================
--- spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/DescriptorProcessor.java 2010-12-02
10:34:06 UTC (rev 13375)
+++ spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/DescriptorProcessor.java 2010-12-02
10:44:14 UTC (rev 13376)
@@ -21,15 +21,14 @@
*/
package org.jboss.wsf.spi.metadata;
-import java.net.URL;
-import org.jboss.xb.binding.ObjectModelFactory;
-
/**
* Descriptor processor is abstraction over configuration procesing.
+ * @deprecated This will be replaced by {@link
org.jboss.wsf.spi.metadata.DescriptorParser} interface.
*
* @author <a href="mailto:ropalka@redhat.com">Richard Opalka</a>
*/
+@Deprecated
public interface DescriptorProcessor<T>
{
/**
@@ -41,10 +40,10 @@
* Descriptor name to parse and process.
* @return descriptor name to consume.
*/
- String getDescriptorName();
- /**
- * OM factory building object tree from the configuration file.
- * @return OM factory
- */
- ObjectModelFactory getFactory(final URL url);
+ String getDescriptorName();
+// /**
+// * OM factory building object tree from the configuration file.
+// * @return OM factory
+// */
+// ObjectModelFactory getFactory(final URL url);
}
Modified: spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/ParserConstants.java
===================================================================
--- spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/ParserConstants.java 2010-12-02
10:34:06 UTC (rev 13375)
+++ spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/ParserConstants.java 2010-12-02
10:44:14 UTC (rev 13376)
@@ -21,8 +21,6 @@
*/
package org.jboss.wsf.spi.metadata;
-import javax.xml.namespace.QName;
-
/**
* Constants for parsing descriptors
*
@@ -33,72 +31,74 @@
public abstract class ParserConstants
{
public static final String JAVAEE_NS = "http://java.sun.com/xml/ns/javaee";
+
+ public static final String J2EE_NS = "http://java.sun.com/xml/ns/j2ee";
- public static final QName QNAME_CHAIN_PORT_PATTERN = new QName(JAVAEE_NS,
"port-name-pattern");
+ public static final String CHAIN_PORT_PATTERN = "port-name-pattern";
- public static final QName QNAME_CHAIN_PROTOCOL_BINDING = new QName(JAVAEE_NS,
"protocol-bindings");
+ public static final String CHAIN_PROTOCOL_BINDING = "protocol-bindings";
- public static final QName QNAME_CHAIN_SERVICE_PATTERN = new QName(JAVAEE_NS,
"service-name-pattern");
+ public static final String CHAIN_SERVICE_PATTERN = "service-name-pattern";
- public static final QName QNAME_HANDLER_CHAIN = new QName(JAVAEE_NS,
"handler-chain");
+ public static final String HANDLER_CHAIN = "handler-chain";
- public static final QName QNAME_HANDLER_CHAINS = new QName(JAVAEE_NS,
"handler-chains");
+ public static final String HANDLER_CHAINS = "handler-chains";
- public static final QName QNAME_HANDLER = new QName(JAVAEE_NS, "handler");
+ public static final String HANDLER = "handler";
- public static final QName QNAME_HANDLER_NAME = new QName(JAVAEE_NS,
"handler-name");
+ public static final String HANDLER_NAME = "handler-name";
- public static final QName QNAME_HANDLER_CLASS = new QName(JAVAEE_NS,
"handler-class");
+ public static final String HANDLER_CLASS = "handler-class";
- public static final QName QNAME_HANDLER_SOAP_ROLE = new QName(JAVAEE_NS,
"soap-role");
+ public static final String HANDLER_SOAP_ROLE = "soap-role";
- public static final QName QNAME_HANDLER_SOAP_HEADER = new QName(JAVAEE_NS,
"soap-header");
+ public static final String HANDLER_SOAP_HEADER = "soap-header";
- public static final QName QNAME_HANDLER_PARAM = new QName(JAVAEE_NS,
"init-param");
+ public static final String HANDLER_PARAM = "init-param";
- public static final QName QNAME_HANDLER_PARAM_NAME = new QName(JAVAEE_NS,
"param-name");
+ public static final String HANDLER_PARAM_NAME = "param-name";
- public static final QName QNAME_HANDLER_PARAM_VALUE = new QName(JAVAEE_NS,
"param-value");
+ public static final String HANDLER_PARAM_VALUE = "param-value";
- public static final QName QNAME_WEBSERVICES = new QName(JAVAEE_NS,
"webservices");
+ public static final String WEBSERVICES = "webservices";
- public static final QName QNAME_WEBSERVICE_DESCRIPTION = new QName(JAVAEE_NS,
"webservice-description");
+ public static final String WEBSERVICE_DESCRIPTION =
"webservice-description";
- public static final QName QNAME_WEBSERVICE_DESCRIPTION_NAME = new QName(JAVAEE_NS,
"webservice-description-name");
+ public static final String WEBSERVICE_DESCRIPTION_NAME =
"webservice-description-name";
- public static final QName QNAME_JAXRPC_MAPPING_FILE = new QName(JAVAEE_NS,
"jaxrpc-mapping-file");
+ public static final String JAXRPC_MAPPING_FILE = "jaxrpc-mapping-file";
- public static final QName QNAME_WSDL_FILE = new QName(JAVAEE_NS,
"wsdl-file");
+ public static final String WSDL_FILE = "wsdl-file";
- public static final QName QNAME_PORT_COMPONENT = new QName(JAVAEE_NS,
"port-component");
+ public static final String PORT_COMPONENT = "port-component";
- public static final QName QNAME_PORT_COMPONENT_NAME = new QName(JAVAEE_NS,
"port-component-name");
+ public static final String PORT_COMPONENT_NAME = "port-component-name";
- public static final QName QNAME_WSDL_SERVICE = new QName(JAVAEE_NS,
"wsdl-service");
+ public static final String WSDL_SERVICE = "wsdl-service";
- public static final QName QNAME_WSDL_PORT = new QName(JAVAEE_NS,
"wsdl-port");
+ public static final String WSDL_PORT = "wsdl-port";
- public static final QName QNAME_ENABLE_MTOM = new QName(JAVAEE_NS,
"enable-mtom");
+ public static final String ENABLE_MTOM = "enable-mtom";
- public static final QName QNAME_MTOM_THRESHOLD = new QName(JAVAEE_NS,
"mtom-threshold");
+ public static final String MTOM_THRESHOLD = "mtom-threshold";
- public static final QName QNAME_ADDRESSING = new QName(JAVAEE_NS,
"addressing");
+ public static final String ADDRESSING = "addressing";
- public static final QName QNAME_ADDRESSING_RESPONSES = new QName(JAVAEE_NS,
"responses");
+ public static final String ADDRESSING_RESPONSES = "responses";
- public static final QName QNAME_RESPECT_BINDING = new QName(JAVAEE_NS,
"respect-binding");
+ public static final String RESPECT_BINDING = "respect-binding";
- public static final QName QNAME_PROTOCOL_BINDING = new QName(JAVAEE_NS,
"protocol-binding");
+ public static final String PROTOCOL_BINDING = "protocol-binding";
- public static final QName QNAME_SERVICE_ENDPOINT_INTERFACE = new QName(JAVAEE_NS,
"service-endpoint-interface");
+ public static final String SERVICE_ENDPOINT_INTERFACE =
"service-endpoint-interface";
- public static final QName QNAME_SERVICE_IMPL_BEAN = new QName(JAVAEE_NS,
"service-impl-bean");
+ public static final String SERVICE_IMPL_BEAN = "service-impl-bean";
- public static final QName QNAME_EJB_LINK = new QName(JAVAEE_NS,
"ejb-link");
+ public static final String EJB_LINK = "ejb-link";
- public static final QName QNAME_SERVLET_LINK = new QName(JAVAEE_NS,
"servlet-link");
+ public static final String SERVLET_LINK = "servlet-link";
- public static final QName QNAME_ENABLED = new QName(JAVAEE_NS, "enabled");
+ public static final String ENABLED = "enabled";
- public static final QName QNAME_REQUIRED = new QName(JAVAEE_NS,
"required");
+ public static final String REQUIRED = "required";
}
Modified:
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/j2ee/serviceref/UnifiedHandlerChainsMetaDataParser.java
===================================================================
---
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/j2ee/serviceref/UnifiedHandlerChainsMetaDataParser.java 2010-12-02
10:34:06 UTC (rev 13375)
+++
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/j2ee/serviceref/UnifiedHandlerChainsMetaDataParser.java 2010-12-02
10:44:14 UTC (rev 13376)
@@ -82,10 +82,10 @@
}
case START_ELEMENT : {
- if (match(reader, QNAME_HANDLER_CHAINS))
+ if (match(reader, JAVAEE_NS, HANDLER_CHAINS) || match(reader, J2EE_NS,
HANDLER_CHAINS))
{
UnifiedHandlerChainsMetaDataParser parser = new
UnifiedHandlerChainsMetaDataParser();
- handlerChains = parser.parseHandlerChains(reader);
+ handlerChains = parser.parseHandlerChains(reader,
reader.getNamespaceURI());
}
else
{
Added: spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/jms/JMSDescriptorParser.java
===================================================================
--- spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/jms/JMSDescriptorParser.java
(rev 0)
+++
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/jms/JMSDescriptorParser.java 2010-12-02
10:44:14 UTC (rev 13376)
@@ -0,0 +1,34 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2010, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.wsf.spi.metadata.jms;
+
+import org.jboss.wsf.spi.metadata.DescriptorParser;
+
+/**
+ * Parser for JMS UMDM.
+ *
+ * @author <a href="mailto:ropalka@redhat.com">Richard Opalka</a>
+ * @author <a href="mailto:alessio.soldano@jboss.com">Alessio
Soldano</a>
+ */
+public interface JMSDescriptorParser extends
DescriptorParser<JMSEndpointsMetaData>
+{
+}
Modified:
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/jms/JMSDescriptorProcessor.java
===================================================================
---
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/jms/JMSDescriptorProcessor.java 2010-12-02
10:34:06 UTC (rev 13375)
+++
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/jms/JMSDescriptorProcessor.java 2010-12-02
10:44:14 UTC (rev 13376)
@@ -25,9 +25,11 @@
/**
* Processor for JMS UMDM.
+ * @deprecated To be replaced by {@link
org.jboss.wsf.spi.metadata.jms.JMSDescriptorParser}
*
* @author <a href="mailto:ropalka@redhat.com">Richard Opalka</a>
*/
+@Deprecated
public interface JMSDescriptorProcessor extends
DescriptorProcessor<JMSEndpointsMetaData>
{
}
Added:
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/webservices/WebservicesDescriptorParser.java
===================================================================
---
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/webservices/WebservicesDescriptorParser.java
(rev 0)
+++
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/webservices/WebservicesDescriptorParser.java 2010-12-02
10:44:14 UTC (rev 13376)
@@ -0,0 +1,34 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2010, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.wsf.spi.metadata.webservices;
+
+import org.jboss.wsf.spi.metadata.DescriptorParser;
+
+/**
+ * Parser for WS UMDM.
+ *
+ * @author <a href="mailto:ropalka@redhat.com">Richard Opalka</a>
+ * @author <a href="mailto:alessio.soldano@jboss.com">Alessio
Soldano</a>
+ */
+public interface WebservicesDescriptorParser extends
DescriptorParser<WebservicesMetaData>
+{
+}
Modified:
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/webservices/WebservicesDescriptorProcessor.java
===================================================================
---
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/webservices/WebservicesDescriptorProcessor.java 2010-12-02
10:34:06 UTC (rev 13375)
+++
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/webservices/WebservicesDescriptorProcessor.java 2010-12-02
10:44:14 UTC (rev 13376)
@@ -27,7 +27,9 @@
* Processor for WS UMDM.
*
* @author <a href="mailto:ropalka@redhat.com">Richard Opalka</a>
+ * @deprecated To be replaced by {@link
org.jboss.wsf.spi.metadata.webservices.DescriptorParser}
*/
+@Deprecated
public interface WebservicesDescriptorProcessor extends
DescriptorProcessor<WebservicesMetaData>
{
}
Modified:
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/webservices/WebservicesFactory.java
===================================================================
---
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/webservices/WebservicesFactory.java 2010-12-02
10:34:06 UTC (rev 13375)
+++
spi/trunk/src/main/java/org/jboss/wsf/spi/metadata/webservices/WebservicesFactory.java 2010-12-02
10:44:14 UTC (rev 13376)
@@ -23,7 +23,31 @@
import static javax.xml.stream.XMLStreamConstants.END_ELEMENT;
import static javax.xml.stream.XMLStreamConstants.START_ELEMENT;
-import static org.jboss.wsf.spi.metadata.ParserConstants.*;
+import static org.jboss.wsf.spi.metadata.ParserConstants.ADDRESSING;
+import static org.jboss.wsf.spi.metadata.ParserConstants.ADDRESSING_RESPONSES;
+import static org.jboss.wsf.spi.metadata.ParserConstants.EJB_LINK;
+import static org.jboss.wsf.spi.metadata.ParserConstants.ENABLED;
+import static org.jboss.wsf.spi.metadata.ParserConstants.ENABLE_MTOM;
+import static org.jboss.wsf.spi.metadata.ParserConstants.HANDLER;
+import static org.jboss.wsf.spi.metadata.ParserConstants.HANDLER_CHAINS;
+import static org.jboss.wsf.spi.metadata.ParserConstants.J2EE_NS;
+import static org.jboss.wsf.spi.metadata.ParserConstants.JAVAEE_NS;
+import static org.jboss.wsf.spi.metadata.ParserConstants.JAXRPC_MAPPING_FILE;
+import static org.jboss.wsf.spi.metadata.ParserConstants.MTOM_THRESHOLD;
+import static org.jboss.wsf.spi.metadata.ParserConstants.PORT_COMPONENT;
+import static org.jboss.wsf.spi.metadata.ParserConstants.PORT_COMPONENT_NAME;
+import static org.jboss.wsf.spi.metadata.ParserConstants.PROTOCOL_BINDING;
+import static org.jboss.wsf.spi.metadata.ParserConstants.REQUIRED;
+import static org.jboss.wsf.spi.metadata.ParserConstants.RESPECT_BINDING;
+import static org.jboss.wsf.spi.metadata.ParserConstants.SERVICE_ENDPOINT_INTERFACE;
+import static org.jboss.wsf.spi.metadata.ParserConstants.SERVICE_IMPL_BEAN;
+import static org.jboss.wsf.spi.metadata.ParserConstants.SERVLET_LINK;
+import static org.jboss.wsf.spi.metadata.ParserConstants.WEBSERVICES;
+import static org.jboss.wsf.spi.metadata.ParserConstants.WEBSERVICE_DESCRIPTION;
+import static org.jboss.wsf.spi.metadata.ParserConstants.WEBSERVICE_DESCRIPTION_NAME;
+import static org.jboss.wsf.spi.metadata.ParserConstants.WSDL_FILE;
+import static org.jboss.wsf.spi.metadata.ParserConstants.WSDL_PORT;
+import static org.jboss.wsf.spi.metadata.ParserConstants.WSDL_SERVICE;
import static org.jboss.wsf.spi.util.StAXUtils.elementAsBoolean;
import static org.jboss.wsf.spi.util.StAXUtils.elementAsInt;
import static org.jboss.wsf.spi.util.StAXUtils.elementAsQName;
@@ -42,14 +66,7 @@
import org.jboss.logging.Logger;
import org.jboss.wsf.spi.deployment.UnifiedVirtualFile;
import org.jboss.wsf.spi.metadata.AbstractHandlerChainsMetaDataParser;
-import org.jboss.wsf.spi.metadata.j2ee.serviceref.UnifiedHandlerChainMetaData;
-import org.jboss.wsf.spi.metadata.j2ee.serviceref.UnifiedHandlerChainsMetaData;
-import org.jboss.wsf.spi.metadata.j2ee.serviceref.UnifiedHandlerMetaData;
-import org.jboss.wsf.spi.metadata.j2ee.serviceref.UnifiedInitParamMetaData;
import org.jboss.wsf.spi.util.StAXUtils;
-import org.jboss.xb.binding.ObjectModelFactory;
-import org.jboss.xb.binding.UnmarshallingContext;
-import org.xml.sax.Attributes;
/**
* A JBossXB factory for {@link WebservicesMetaData}
@@ -57,7 +74,7 @@
* @author Thomas.Diesler(a)jboss.org
* @since 16-Apr-2004
*/
-public class WebservicesFactory extends AbstractHandlerChainsMetaDataParser implements
ObjectModelFactory
+public class WebservicesFactory extends AbstractHandlerChainsMetaDataParser
{
// provide logging
private static final Logger log = Logger.getLogger(WebservicesFactory.class);
@@ -110,30 +127,33 @@
// the descriptor is optional
if (wsdd != null)
{
+ return load(wsdd.toURL());
+ }
- URL wsddUrl = wsdd.toURL();
- InputStream is = null;
+ return webservices;
+ }
+
+ public static WebservicesMetaData load(URL wsddUrl)
+ {
+ InputStream is = null;
+ try
+ {
+ is = wsddUrl.openStream();
+ XMLStreamReader xmlr = StAXUtils.createXMLStreamReader(is);
+ return parse(xmlr, wsddUrl);
+ }
+ catch (Exception e)
+ {
+ throw new WebServiceException("Failed to unmarshall " + wsddUrl +
":" + e.getMessage(), e);
+ }
+ finally
+ {
try
{
- is = wsddUrl.openStream();
- XMLStreamReader xmlr = StAXUtils.createXMLStreamReader(is);
- webservices = parse(xmlr, wsddUrl);
+ if (is != null) is.close();
}
- catch (Exception e)
- {
- throw new WebServiceException("Failed to unmarshall " + wsddUrl +
":" + e.getMessage());
- }
- finally
- {
- try
- {
- if (is != null) is.close();
- }
- catch (IOException e) {} //ignore
- }
+ catch (IOException e) {} //ignore
}
-
- return webservices;
}
public static WebservicesMetaData parse(InputStream is)
@@ -180,10 +200,11 @@
}
case START_ELEMENT : {
- if (match(reader, QNAME_WEBSERVICES))
+ if (match(reader, JAVAEE_NS, WEBSERVICES) || match(reader, J2EE_NS,
WEBSERVICES))
{
+ String nsUri = reader.getNamespaceURI();
WebservicesFactory factory = new WebservicesFactory(descriptorURL);
- metadata = factory.parseWebservices(reader, descriptorURL);
+ metadata = factory.parseWebservices(reader, nsUri, descriptorURL);
}
else
{
@@ -194,7 +215,7 @@
return metadata;
}
- private WebservicesMetaData parseWebservices(XMLStreamReader reader, URL
descriptorURL) throws XMLStreamException
+ private WebservicesMetaData parseWebservices(XMLStreamReader reader, String nsUri, URL
descriptorURL) throws XMLStreamException
{
WebservicesMetaData metadata = new WebservicesMetaData(descriptorURL);
while (reader.hasNext())
@@ -202,7 +223,7 @@
switch (reader.nextTag())
{
case XMLStreamConstants.END_ELEMENT : {
- if (match(reader, QNAME_WEBSERVICES))
+ if (match(reader, nsUri, WEBSERVICES))
{
return metadata;
}
@@ -212,8 +233,8 @@
}
}
case XMLStreamConstants.START_ELEMENT : {
- if (match(reader, QNAME_WEBSERVICE_DESCRIPTION)) {
- metadata.addWebserviceDescription(parseWebserviceDescription(reader,
metadata));
+ if (match(reader, nsUri, WEBSERVICE_DESCRIPTION)) {
+ metadata.addWebserviceDescription(parseWebserviceDescription(reader,
nsUri, metadata));
}
else
{
@@ -225,7 +246,7 @@
throw new IllegalStateException("Reached end of xml document
unexpectedly");
}
- private WebserviceDescriptionMetaData parseWebserviceDescription(XMLStreamReader
reader, WebservicesMetaData wsMetaData) throws XMLStreamException
+ private WebserviceDescriptionMetaData parseWebserviceDescription(XMLStreamReader
reader, String nsUri, WebservicesMetaData wsMetaData) throws XMLStreamException
{
WebserviceDescriptionMetaData description = new
WebserviceDescriptionMetaData(wsMetaData);
while (reader.hasNext())
@@ -233,7 +254,7 @@
switch (reader.nextTag())
{
case XMLStreamConstants.END_ELEMENT : {
- if (match(reader, QNAME_WEBSERVICE_DESCRIPTION))
+ if (match(reader, nsUri, WEBSERVICE_DESCRIPTION))
{
return description;
}
@@ -243,17 +264,17 @@
}
}
case XMLStreamConstants.START_ELEMENT : {
- if (match(reader, QNAME_WEBSERVICE_DESCRIPTION_NAME)) {
+ if (match(reader, nsUri, WEBSERVICE_DESCRIPTION_NAME)) {
description.setWebserviceDescriptionName(elementAsString(reader));
}
- else if (match(reader, QNAME_WSDL_FILE)) {
+ else if (match(reader, nsUri, WSDL_FILE)) {
description.setWsdlFile(elementAsString(reader));
}
- else if (match(reader, QNAME_JAXRPC_MAPPING_FILE)) {
+ else if (match(reader, nsUri, JAXRPC_MAPPING_FILE)) {
description.setJaxrpcMappingFile(elementAsString(reader));
}
- else if (match(reader, QNAME_PORT_COMPONENT)) {
- description.addPortComponent(parsePortComponent(reader, description));
+ else if (match(reader, nsUri, PORT_COMPONENT)) {
+ description.addPortComponent(parsePortComponent(reader, nsUri,
description));
}
else
{
@@ -265,7 +286,7 @@
throw new IllegalStateException("Reached end of xml document
unexpectedly");
}
- private PortComponentMetaData parsePortComponent(XMLStreamReader reader,
WebserviceDescriptionMetaData desc) throws XMLStreamException
+ private PortComponentMetaData parsePortComponent(XMLStreamReader reader, String nsUri,
WebserviceDescriptionMetaData desc) throws XMLStreamException
{
PortComponentMetaData pc = new PortComponentMetaData(desc);
while (reader.hasNext())
@@ -273,7 +294,7 @@
switch (reader.nextTag())
{
case XMLStreamConstants.END_ELEMENT : {
- if (match(reader, QNAME_PORT_COMPONENT))
+ if (match(reader, nsUri, PORT_COMPONENT))
{
return pc;
}
@@ -283,39 +304,42 @@
}
}
case XMLStreamConstants.START_ELEMENT : {
- if (match(reader, QNAME_PORT_COMPONENT_NAME)) {
+ if (match(reader, nsUri, PORT_COMPONENT_NAME)) {
pc.setPortComponentName(elementAsString(reader));
}
- else if (match(reader, QNAME_WSDL_SERVICE)) {
+ else if (match(reader, nsUri, WSDL_SERVICE)) {
pc.setWsdlService(elementAsQName(reader));
}
- else if (match(reader, QNAME_WSDL_PORT)) {
+ else if (match(reader, nsUri, WSDL_PORT)) {
pc.setWsdlPort(elementAsQName(reader));
}
- else if (match(reader, QNAME_ENABLE_MTOM)) {
+ else if (match(reader, nsUri, ENABLE_MTOM)) {
pc.setMtomEnabled(elementAsBoolean(reader));
}
- else if (match(reader, QNAME_MTOM_THRESHOLD)) {
+ else if (match(reader, nsUri, MTOM_THRESHOLD)) {
pc.setMtomThreshold(elementAsInt(reader));
}
- else if (match(reader, QNAME_ADDRESSING)) {
- parseAddressing(reader, pc);
+ else if (match(reader, nsUri, ADDRESSING)) {
+ parseAddressing(reader, nsUri, pc);
}
- else if (match(reader, QNAME_RESPECT_BINDING)) {
- parseRespectBinding(reader, pc);
+ else if (match(reader, nsUri, RESPECT_BINDING)) {
+ parseRespectBinding(reader, nsUri, pc);
}
- else if (match(reader, QNAME_PROTOCOL_BINDING)) {
+ else if (match(reader, nsUri, PROTOCOL_BINDING)) {
pc.setProtocolBinding(elementAsString(reader));
}
- else if (match(reader, QNAME_SERVICE_ENDPOINT_INTERFACE)) {
+ else if (match(reader, nsUri, SERVICE_ENDPOINT_INTERFACE)) {
pc.setServiceEndpointInterface(elementAsString(reader));
}
- else if (match(reader, QNAME_SERVICE_IMPL_BEAN)) {
- parseServiceImplBean(reader, pc);
+ else if (match(reader, nsUri, SERVICE_IMPL_BEAN)) {
+ parseServiceImplBean(reader, nsUri, pc);
}
- else if (match(reader, QNAME_HANDLER_CHAINS)) {
- pc.setHandlerChains(parseHandlerChains(reader));
+ else if (match(reader, nsUri, HANDLER_CHAINS)) {
+ pc.setHandlerChains(parseHandlerChains(reader, nsUri));
}
+ else if (match(reader, nsUri, HANDLER)) {
+ pc.addHandler(parseHandler(reader, nsUri));
+ }
else
{
throw new IllegalStateException("Unexpected element: " +
reader.getLocalName());
@@ -326,14 +350,14 @@
throw new IllegalStateException("Reached end of xml document
unexpectedly");
}
- private void parseAddressing(XMLStreamReader reader, PortComponentMetaData pc) throws
XMLStreamException
+ private void parseAddressing(XMLStreamReader reader, String nsUri,
PortComponentMetaData pc) throws XMLStreamException
{
while (reader.hasNext())
{
switch (reader.nextTag())
{
case XMLStreamConstants.END_ELEMENT : {
- if (match(reader, QNAME_ADDRESSING))
+ if (match(reader, nsUri, ADDRESSING))
{
return;
}
@@ -343,13 +367,13 @@
}
}
case XMLStreamConstants.START_ELEMENT : {
- if (match(reader, QNAME_ENABLED)) {
+ if (match(reader, nsUri, ENABLED)) {
pc.setAddressingEnabled(elementAsBoolean(reader));
}
- else if (match(reader, QNAME_REQUIRED)) {
+ else if (match(reader, nsUri, REQUIRED)) {
pc.setAddressingRequired(elementAsBoolean(reader));
}
- else if (match(reader, QNAME_ADDRESSING_RESPONSES)) {
+ else if (match(reader, nsUri, ADDRESSING_RESPONSES)) {
pc.setAddressingResponses(elementAsString(reader));
}
else
@@ -362,14 +386,14 @@
throw new IllegalStateException("Reached end of xml document
unexpectedly");
}
- private void parseRespectBinding(XMLStreamReader reader, PortComponentMetaData pc)
throws XMLStreamException
+ private void parseRespectBinding(XMLStreamReader reader, String nsUri,
PortComponentMetaData pc) throws XMLStreamException
{
while (reader.hasNext())
{
switch (reader.nextTag())
{
case XMLStreamConstants.END_ELEMENT : {
- if (match(reader, QNAME_RESPECT_BINDING))
+ if (match(reader, nsUri, RESPECT_BINDING))
{
return;
}
@@ -379,7 +403,7 @@
}
}
case XMLStreamConstants.START_ELEMENT : {
- if (match(reader, QNAME_ENABLED)) {
+ if (match(reader, nsUri, ENABLED)) {
pc.setRespectBindingEnabled(elementAsBoolean(reader));
}
else
@@ -392,14 +416,14 @@
throw new IllegalStateException("Reached end of xml document
unexpectedly");
}
- private void parseServiceImplBean(XMLStreamReader reader, PortComponentMetaData pc)
throws XMLStreamException
+ private void parseServiceImplBean(XMLStreamReader reader, String nsUri,
PortComponentMetaData pc) throws XMLStreamException
{
while (reader.hasNext())
{
switch (reader.nextTag())
{
case XMLStreamConstants.END_ELEMENT : {
- if (match(reader, QNAME_SERVICE_IMPL_BEAN))
+ if (match(reader, nsUri, SERVICE_IMPL_BEAN))
{
return;
}
@@ -409,10 +433,10 @@
}
}
case XMLStreamConstants.START_ELEMENT : {
- if (match(reader, QNAME_SERVLET_LINK)) {
+ if (match(reader, nsUri, SERVLET_LINK)) {
pc.setServletLink(elementAsString(reader));
}
- else if (match(reader, QNAME_EJB_LINK)) {
+ else if (match(reader, nsUri, EJB_LINK)) {
pc.setEjbLink(elementAsString(reader));
}
else
@@ -424,248 +448,4 @@
}
throw new IllegalStateException("Reached end of xml document
unexpectedly");
}
-
- //-----------------------------------------
- //TODO Below are methods to be removed....
- //-----------------------------------------
-
- /**
- * This method is called on the factory by the object model builder when the parsing
starts.
- *
- * @return the root of the object model.
- */
- public Object newRoot(Object root, UnmarshallingContext navigator, String
namespaceURI, String localName, Attributes attrs)
- {
- WebservicesMetaData webservicesMetaData = new WebservicesMetaData(descriptorURL);
- return webservicesMetaData;
- }
-
- public Object completeRoot(Object root, UnmarshallingContext ctx, String uri, String
name)
- {
- return root;
- }
-
- /**
- * Called when parsing of a new element started.
- */
- public Object newChild(WebservicesMetaData webservices, UnmarshallingContext
navigator, String namespaceURI, String localName, Attributes attrs)
- {
- if ("webservice-description".equals(localName))
- return new WebserviceDescriptionMetaData(webservices);
- else return null;
- }
-
- /**
- * Called when parsing character is complete.
- */
- public void addChild(WebservicesMetaData webservices, WebserviceDescriptionMetaData
webserviceDescription, UnmarshallingContext navigator, String namespaceURI,
- String localName)
- {
- webservices.addWebserviceDescription(webserviceDescription);
- }
-
- /**
- * Called when parsing of a new element started.
- */
- public Object newChild(WebserviceDescriptionMetaData webserviceDescription,
UnmarshallingContext navigator, String namespaceURI, String localName, Attributes attrs)
- {
- if ("port-component".equals(localName))
- return new PortComponentMetaData(webserviceDescription);
- else return null;
- }
-
- /**
- * Called when parsing character is complete.
- */
- public void addChild(WebserviceDescriptionMetaData webserviceDescription,
PortComponentMetaData portComponent, UnmarshallingContext navigator, String namespaceURI,
- String localName)
- {
- webserviceDescription.addPortComponent(portComponent);
- }
-
- /**
- * Called when parsing of a new element started.
- */
- public Object newChild(PortComponentMetaData portComponent, UnmarshallingContext
navigator, String namespaceURI, String localName, Attributes attrs)
- {
- if ("handler".equals(localName))
- return new UnifiedHandlerMetaData(null);
- else if ("handler-chains".equals(localName))
- return new UnifiedHandlerChainsMetaData();
- // @Addressing related elements
- else if ("addressing".equals(localName)) {
- processingAddressingElement = true;
- processingRespectBindingElement = false;
- }
- // @RespectBinding related elements
- else if ("respect-binding".equals(localName)) {
- processingAddressingElement = false;
- processingRespectBindingElement = true;
- }
-
- return null;
- }
-
- /**
- * Called when parsing of a new element started.
- */
- public Object newChild(UnifiedHandlerChainsMetaData handlerChains,
UnmarshallingContext navigator, String namespaceURI, String localName, Attributes attrs)
- {
- if ("handler-chain".equals(localName))
- return new UnifiedHandlerChainMetaData();
- else return null;
- }
-
- /**
- * Called when parsing of a new element started.
- */
- public Object newChild(UnifiedHandlerChainMetaData handlerChains, UnmarshallingContext
navigator, String namespaceURI, String localName, Attributes attrs)
- {
- if ("handler".equals(localName))
- return new UnifiedHandlerMetaData();
- else return null;
- }
-
- /**
- * Called when parsing character is complete.
- */
- public void addChild(PortComponentMetaData portComponent, UnifiedHandlerMetaData
handler, UnmarshallingContext navigator, String namespaceURI, String localName)
- {
- portComponent.addHandler(handler);
- }
-
- /**
- * Called when parsing character is complete.
- */
- public void addChild(PortComponentMetaData portComponent, UnifiedHandlerChainsMetaData
handlerChains, UnmarshallingContext navigator, String namespaceURI,
- String localName)
- {
- portComponent.setHandlerChains(handlerChains);
- }
-
- /**
- * Called when parsing character is complete.
- */
- public void addChild(UnifiedHandlerChainsMetaData chains, UnifiedHandlerChainMetaData
handlerChain, UnmarshallingContext navigator, String namespaceURI,
- String localName)
- {
- chains.addHandlerChain(handlerChain);
- }
-
- /**
- * Called when parsing character is complete.
- */
- public void addChild(UnifiedHandlerChainMetaData chain, UnifiedHandlerMetaData
handler, UnmarshallingContext navigator, String namespaceURI, String localName)
- {
- chain.addHandler(handler);
- }
-
- /**
- * Called when parsing of a new element started.
- */
- public Object newChild(UnifiedHandlerMetaData handler, UnmarshallingContext navigator,
String namespaceURI, String localName, Attributes attrs)
- {
- if ("init-param".equals(localName))
- return new UnifiedInitParamMetaData();
- else return null;
- }
-
- /**
- * Called when parsing character is complete.
- */
- public void addChild(UnifiedHandlerMetaData handler, UnifiedInitParamMetaData param,
UnmarshallingContext navigator, String namespaceURI, String localName)
- {
- handler.addInitParam(param);
- }
-
- /**
- * Called when a new simple child element with text value was read from the XML
content.
- */
- public void setValue(WebserviceDescriptionMetaData webserviceDescription,
UnmarshallingContext navigator, String namespaceURI, String localName, String value)
- {
- if (log.isTraceEnabled())
- log.trace("WebserviceDescriptionMetaData setValue: nuri=" +
namespaceURI + " localName=" + localName + " value=" + value);
-
- if (localName.equals("webservice-description-name"))
- webserviceDescription.setWebserviceDescriptionName(value);
- else if (localName.equals("wsdl-file"))
- webserviceDescription.setWsdlFile(value);
- else if (localName.equals("jaxrpc-mapping-file"))
- webserviceDescription.setJaxrpcMappingFile(value);
- }
-
- /**
- * Called when a new simple child element with text value was read from the XML
content.
- */
- public void setValue(PortComponentMetaData portComponent, UnmarshallingContext
navigator, String namespaceURI, String localName, String value)
- {
- if (log.isTraceEnabled())
- log.trace("PortComponentMetaData setValue: nuri=" + namespaceURI +
" localName=" + localName + " value=" + value);
-
- if (localName.equals("port-component-name"))
- portComponent.setPortComponentName(value);
- else if (localName.equals("wsdl-port"))
- portComponent.setWsdlPort(navigator.resolveQName(value));
- else if (localName.equals("service-endpoint-interface"))
- portComponent.setServiceEndpointInterface(value);
- else if (localName.equals("ejb-link"))
- portComponent.setEjbLink(value);
- else if (localName.equals("servlet-link"))
- portComponent.setServletLink(value);
- else if (localName.equals("wsdl-service"))
- portComponent.setWsdlService(navigator.resolveQName(value));
- else if (localName.equals("protocol-binding"))
- portComponent.setProtocolBinding(value);
- // @Addressing related elements
- else if (localName.equals("enabled"))
- {
- if (processingAddressingElement)
- portComponent.setAddressingEnabled(Boolean.valueOf(value));
- if (processingRespectBindingElement)
- portComponent.setRespectBindingEnabled(Boolean.valueOf(value));
- }
- else if (localName.equals("required") &&
processingAddressingElement)
- portComponent.setAddressingRequired(Boolean.valueOf(value));
- else if (localName.equals("responses") &&
processingAddressingElement)
- portComponent.setAddressingResponses(value);
- // @MTOM related elements
- else if (localName.equals("enable-mtom"))
- portComponent.setMtomEnabled(Boolean.valueOf(value));
- else if (localName.equals("mtom-threshold"))
- portComponent.setMtomThreshold(Integer.valueOf(value));
- }
-
- /**
- * Called when a new simple child element with text value was read from the XML
content.
- */
- public void setValue(UnifiedHandlerMetaData handler, UnmarshallingContext navigator,
String namespaceURI, String localName, String value)
- {
- if (log.isTraceEnabled())
- log.trace("UnifiedHandlerMetaData setValue: nuri=" + namespaceURI +
" localName=" + localName + " value=" + value);
-
- if (localName.equals("handler-name"))
- handler.setHandlerName(value);
- else if (localName.equals("handler-class"))
- handler.setHandlerClass(value);
- else if (localName.equals("soap-header"))
- handler.addSoapHeader(navigator.resolveQName(value));
- else if (localName.equals("soap-role"))
- handler.addSoapRole(value);
- else if (localName.equals("port-name"))
- handler.addPortName(value);
- }
-
- /**
- * Called when a new simple child element with text value was read from the XML
content.
- */
- public void setValue(UnifiedInitParamMetaData param, UnmarshallingContext navigator,
String namespaceURI, String localName, String value)
- {
- if (log.isTraceEnabled())
- log.trace("UnifiedInitParamMetaData setValue: nuri=" + namespaceURI +
" localName=" + localName + " value=" + value);
-
- if (localName.equals("param-name"))
- param.setParamName(value);
- else if (localName.equals("param-value"))
- param.setParamValue(value);
- }
}
Modified: spi/trunk/src/main/java/org/jboss/wsf/spi/util/StAXUtils.java
===================================================================
--- spi/trunk/src/main/java/org/jboss/wsf/spi/util/StAXUtils.java 2010-12-02 10:34:06 UTC
(rev 13375)
+++ spi/trunk/src/main/java/org/jboss/wsf/spi/util/StAXUtils.java 2010-12-02 10:44:14 UTC
(rev 13376)
@@ -119,6 +119,12 @@
{
return reader.getName().equals(name);
}
+
+ public static boolean match(XMLStreamReader reader, String namespace, String
localName)
+ {
+ QName name = reader.getName();
+ return localName.equals(name.getLocalPart()) &&
namespace.equals(name.getNamespaceURI());
+ }
public static String elementAsString(XMLStreamReader reader) throws
XMLStreamException
{