On Jun 25, 2010, at 8:00 AM, David Jencks wrote:

> Thanks!  fixed in rev 958001
> 
> sorry....

Just did the same yesterday ....

Once again I ask myself why-oh-why does svn not have an svn-aware patch 
command!  I guess that's why people like Git.


-David

> 
> On Jun 25, 2010, at 5:42 AM, Thiago Veronezi wrote:
> 
>> Hi, David.
>> I think you forgot to commit the "HandlerChainMetaData.java" file. I'm
>> having a compile exception here.
>> 
>>    [exec]
>> C:\dev\ws_illumi3\openejb3\server\openejb-ejbd\src\main\java\org\apache\openejb\server\ejbd\JndiRequestHandler.java:[275,40]
>> setServiceNamePattern(java.lang.String) in
>> org.apache.openejb.client.HandlerChainMetaData cannot be applied to
>> (javax.xml.namespace.QName)
>>    [exec]
>> C:\dev\ws_illumi3\openejb3\server\openejb-ejbd\src\main\java\org\apache\openejb\server\ejbd\JndiRequestHandler.java:[276,40]
>> setPortNamePattern(java.lang.String) in
>> org.apache.openejb.client.HandlerChainMetaData cannot be applied to
>> (javax.xml.namespace.QName)
>> 
>> tkx,
>> Thiago.
>> 
>> ---------- Forwarded message ----------
>> From: <[email protected]>
>> Date: Thu, Jun 24, 2010 at 8:22 PM
>> Subject: svn commit: r957768 - in
>> /openejb/trunk/openejb3/container/openejb-core/src:
>> main/java/org/apache/openejb/assembler/classic/
>> main/java/org/apache/openejb/config/
>> main/java/org/apache/openejb/core/webservices/
>> test/java/org/apache/openejb/core/webservices/
>> To: [email protected]
>> 
>> 
>> Author: djencks
>> Date: Fri Jun 25 00:22:14 2010
>> New Revision: 957768
>> 
>> URL: http://svn.apache.org/viewvc?rev=957768&view=rev
>> Log:
>> fix handler chain matching
>> 
>> Modified:
>> 
>> openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/HandlerChainInfo.java
>> 
>> openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/ConfigurationFactory.java
>> 
>> openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/webservices/HandlerChainData.java
>> 
>> openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/webservices/HandlerResolverImpl.java
>> 
>> openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/webservices/HandlerResolverImplTest.java
>> 
>> Modified:
>> openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/HandlerChainInfo.java
>> URL:
>> http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/HandlerChainInfo.java?rev=957768&r1=957767&r2=957768&view=diff
>> ==============================================================================
>> ---
>> openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/HandlerChainInfo.java
>> (original)
>> +++
>> openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/HandlerChainInfo.java
>> Fri Jun 25 00:22:14 2010
>> @@ -17,12 +17,13 @@
>> */
>> package org.apache.openejb.assembler.classic;
>> 
>> +import javax.xml.namespace.QName;
>> import java.util.ArrayList;
>> import java.util.List;
>> 
>> public class HandlerChainInfo extends InfoObject {
>> -    public String serviceNamePattern;
>> -    public String portNamePattern;
>> +    public QName serviceNamePattern;
>> +    public QName portNamePattern;
>>   public final List<String> protocolBindings = new ArrayList<String>();
>>   public final List<HandlerInfo> handlers = new ArrayList<HandlerInfo>();
>> }
>> 
>> Modified:
>> openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/ConfigurationFactory.java
>> URL:
>> http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/ConfigurationFactory.java?rev=957768&r1=957767&r2=957768&view=diff
>> ==============================================================================
>> ---
>> openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/ConfigurationFactory.java
>> (original)
>> +++
>> openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/ConfigurationFactory.java
>> Fri Jun 25 00:22:14 2010
>> @@ -218,8 +218,8 @@ public class ConfigurationFactory implem
>> 
>>       for (HandlerChain handlerChain : chains.getHandlerChain()) {
>>           HandlerChainInfo handlerChainInfo = new HandlerChainInfo();
>> -            handlerChainInfo.serviceNamePattern =
>> handlerChain.getServiceNamePattern().toString();
>> -            handlerChainInfo.portNamePattern =
>> handlerChain.getPortNamePattern().toString();
>> +            handlerChainInfo.serviceNamePattern =
>> handlerChain.getServiceNamePattern();
>> +            handlerChainInfo.portNamePattern =
>> handlerChain.getPortNamePattern();
>> 
>> handlerChainInfo.protocolBindings.addAll(handlerChain.getProtocolBindings());
>>           for (Handler handler : handlerChain.getHandler()) {
>>               HandlerInfo handlerInfo = new HandlerInfo();
>> 
>> Modified:
>> openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/webservices/HandlerChainData.java
>> URL:
>> http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/webservices/HandlerChainData.java?rev=957768&r1=957767&r2=957768&view=diff
>> ==============================================================================
>> ---
>> openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/webservices/HandlerChainData.java
>> (original)
>> +++
>> openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/webservices/HandlerChainData.java
>> Fri Jun 25 00:22:14 2010
>> @@ -17,27 +17,28 @@
>> */
>> package org.apache.openejb.core.webservices;
>> 
>> +import javax.xml.namespace.QName;
>> import java.util.ArrayList;
>> import java.util.List;
>> 
>> public class HandlerChainData {
>> -    private final String serviceNamePattern;
>> -    private final String portNamePattern;
>> +    private final QName serviceNamePattern;
>> +    private final QName portNamePattern;
>>   private final List<String> protocolBindings = new ArrayList<String>();
>>   private final List<HandlerData> handlers = new ArrayList<HandlerData>();
>> 
>> -    public HandlerChainData(String serviceNamePattern, String
>> portNamePattern, List<String> protocolBindings, List<HandlerData> handlers)
>> {
>> +    public HandlerChainData(QName serviceNamePattern, QName
>> portNamePattern, List<String> protocolBindings, List<HandlerData> handlers)
>> {
>>       this.serviceNamePattern = serviceNamePattern;
>>       this.portNamePattern = portNamePattern;
>>       this.protocolBindings.addAll(protocolBindings);
>>       this.handlers.addAll(handlers);
>>   }
>> 
>> -    public String getServiceNamePattern() {
>> +    public QName getServiceNamePattern() {
>>       return serviceNamePattern;
>>   }
>> 
>> -    public String getPortNamePattern() {
>> +    public QName getPortNamePattern() {
>>       return portNamePattern;
>>   }
>> 
>> 
>> Modified:
>> openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/webservices/HandlerResolverImpl.java
>> URL:
>> http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/webservices/HandlerResolverImpl.java?rev=957768&r1=957767&r2=957768&view=diff
>> ==============================================================================
>> ---
>> openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/webservices/HandlerResolverImpl.java
>> (original)
>> +++
>> openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/webservices/HandlerResolverImpl.java
>> Fri Jun 25 00:22:14 2010
>> @@ -93,11 +93,11 @@ public class HandlerResolverImpl impleme
>>       return handlers;
>>   }
>> 
>> -    private boolean matchServiceName(PortInfo info, String namePattern) {
>> +    private boolean matchServiceName(PortInfo info, QName namePattern) {
>>       return match((info == null ? null : info.getServiceName()),
>> namePattern);
>>   }
>> 
>> -    private boolean matchPortName(PortInfo info, String namePattern) {
>> +    private boolean matchPortName(PortInfo info, QName namePattern) {
>>       return match((info == null ? null : info.getPortName()),
>> namePattern);
>>   }
>> 
>> @@ -127,23 +127,18 @@ public class HandlerResolverImpl impleme
>>   }
>> 
>>   /**
>> -     * Performs basic localName matching, namespaces are not checked!
>> +     * Performs basic localName matching
>>    */
>> -    private boolean match(QName name, String namePattern) {
>> +    private boolean match(QName name, QName namePattern) {
>>       if (name == null) {
>> -            return (namePattern == null || namePattern.equals("*"));
>> +            return (namePattern == null ||
>> namePattern.getLocalPart().equals("*"));
>>       } else {
>>           if (namePattern == null) {
>>               return true;
>> +            } else if (namePattern.getNamespaceURI() != null &&
>> !name.getNamespaceURI().equals(namePattern.getNamespaceURI())) {
>> +                return false;
>>           } else {
>> -                String localNamePattern;
>> -
>> -                // get the local name from pattern
>> -                int pos = namePattern.indexOf(':');
>> -                localNamePattern = (pos == -1) ? namePattern : namePattern
>> -                        .substring(pos + 1);
>> -                localNamePattern = localNamePattern.trim();
>> -
>> +                String localNamePattern = namePattern.getLocalPart();
>>               if (localNamePattern.equals("*")) {
>>                   // matches anything
>>                   return true;
>> 
>> Modified:
>> openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/webservices/HandlerResolverImplTest.java
>> URL:
>> http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/webservices/HandlerResolverImplTest.java?rev=957768&r1=957767&r2=957768&view=diff
>> ==============================================================================
>> ---
>> openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/webservices/HandlerResolverImplTest.java
>> (original)
>> +++
>> openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/webservices/HandlerResolverImplTest.java
>> Fri Jun 25 00:22:14 2010
>> @@ -65,19 +65,19 @@ public class HandlerResolverImplTest ext
>>       handlers = resolver.getHandlerChain(new TestPortInfo(null, null,
>> null));
>>       assertEquals(0, handlers.size());
>> 
>> -        QName serviceName1 = new QName("http://foo";, "Bar");
>> +        QName serviceName1 = new QName("http://java.sun.com/xml/ns/javaee";,
>> "Bar");
>>       handlers = resolver.getHandlerChain(new TestPortInfo(null, null,
>> serviceName1));
>>       assertEquals(1, handlers.size());
>> 
>> -        QName serviceName2 = new QName("http://foo";, "Foo");
>> +        QName serviceName2 = new QName("http://java.sun.com/xml/ns/javaee";,
>> "Foo");
>>       handlers = resolver.getHandlerChain(new TestPortInfo(null, null,
>> serviceName2));
>>       assertEquals(2, handlers.size());
>> 
>> -        QName serviceName3 = new QName("http://foo";, "FooBar");
>> +        QName serviceName3 = new QName("http://java.sun.com/xml/ns/javaee";,
>> "FooBar");
>>       handlers = resolver.getHandlerChain(new TestPortInfo(null, null,
>> serviceName3));
>>       assertEquals(1, handlers.size());
>> 
>> -        QName serviceName4 = new QName("http://foo";, "BarFoo");
>> +        QName serviceName4 = new QName("http://java.sun.com/xml/ns/javaee";,
>> "BarFoo");
>>       handlers = resolver.getHandlerChain(new TestPortInfo(null, null,
>> serviceName4));
>>       assertEquals(0, handlers.size());
>>   }
>> @@ -118,19 +118,19 @@ public class HandlerResolverImplTest ext
>>       handlers = resolver.getHandlerChain(new TestPortInfo(null, null,
>> null));
>>       assertEquals(0, handlers.size());
>> 
>> -        QName portName1 = new QName("http://foo";, "Bar");
>> +        QName portName1 = new QName("http://java.sun.com/xml/ns/javaee";,
>> "Bar");
>>       handlers = resolver.getHandlerChain(new TestPortInfo(null,
>> portName1, null));
>>       assertEquals(1, handlers.size());
>> 
>> -        QName portName2 = new QName("http://foo";, "Foo");
>> +        QName portName2 = new QName("http://java.sun.com/xml/ns/javaee";,
>> "Foo");
>>       handlers = resolver.getHandlerChain(new TestPortInfo(null,
>> portName2, null));
>>       assertEquals(2, handlers.size());
>> 
>> -        QName portName3 = new QName("http://foo";, "FooBar");
>> +        QName portName3 = new QName("http://java.sun.com/xml/ns/javaee";,
>> "FooBar");
>>       handlers = resolver.getHandlerChain(new TestPortInfo(null,
>> portName3, null));
>>       assertEquals(1, handlers.size());
>> 
>> -        QName portName4 = new QName("http://foo";, "BarFoo");
>> +        QName portName4 = new QName("http://java.sun.com/xml/ns/javaee";,
>> "BarFoo");
>>       handlers = resolver.getHandlerChain(new TestPortInfo(null,
>> portName4, null));
>>       assertEquals(0, handlers.size());
>>   }
>> @@ -148,8 +148,8 @@ public class HandlerResolverImplTest ext
>>       handlers = resolver.getHandlerChain(new TestPortInfo(null, null,
>> null));
>>       assertEquals(0, handlers.size());
>> 
>> -        QName serviceName1 = new QName("http:/foo", "Bar");
>> -        QName portName1 = new QName("http://foo";, "FooBar");
>> +        QName serviceName1 = new QName("http://java.sun.com/xml/ns/javaee";,
>> "Bar");
>> +        QName portName1 = new QName("http://java.sun.com/xml/ns/javaee";,
>> "FooBar");
>>       String binding1 = "##XML_HTTP";
>>       handlers = resolver.getHandlerChain(new TestPortInfo(binding1,
>> portName1, serviceName1));
>>       assertEquals(3, handlers.size());
>> @@ -158,8 +158,8 @@ public class HandlerResolverImplTest ext
>>       handlers = resolver.getHandlerChain(new TestPortInfo(binding2,
>> portName1, serviceName1));
>>       assertEquals(2, handlers.size());
>> 
>> -        QName serviceName2 = new QName("http://foo";, "Baaz");
>> -        QName portName2 = new QName("http://foo";, "Baaz");
>> +        QName serviceName2 = new QName("http://java.sun.com/xml/ns/javaee";,
>> "Baaz");
>> +        QName portName2 = new QName("http://java.sun.com/xml/ns/javaee";,
>> "Baaz");
>>       handlers = resolver.getHandlerChain(new TestPortInfo(binding1,
>> portName2, serviceName2));
>>       assertEquals(1, handlers.size());
>>   }
> 
> 

Reply via email to