On 18/09/12 16:54, Andrea Aime wrote:
> Ha, good question, have no idea, have you tried setting a breakpoint in
> that portion of the dispatcher and see
> what's going on?
> Also put a breakpoint in setCiteCompliant, the dispatcher has to
> manually be set that way by a
> interceptor, normally the CiteComplianceHack class (located in main, and
> configured as an
> interceptor in the url mappings of the service being used)

I have found it. Nothing to do with CITE compliance, which is always 
false. The new code that Andrea added is never entered. It is just a 
lucky coincidence that this change led me to the workaround.

The cause of the test failure is a change to the bean configuration for 
propertyName11KvpParser in src/wfs/src/main/java/applicationContext.xml 
that could have a broad impact on WFS requests that specify propertyName 
and version without specifying service. I do not know what this change 
was meant to do, or why it has this effect. I am not even sure what the 
bean does!

The change was:

commit c03ce370f3a8da0089f3565e3a056f29e63d60d1
Author: alessio <[email protected]>
Date:   Sun Sep 16 18:44:59 2012 +0200
      - CSW: getDomain.propertyName

Removing the change to the bean configuration allows the original 
PropertySelectionTest to pass.

I also note that the service value is set to "wfs" and not "WFS" as I 
might have expected.

Here is the diff:

diff --git a/src/wfs/src/main/java/applicationContext.xml 
b/src/wfs/src/main/java/applicationContext.xml
index b5ad972..42e336d 100644
--- a/src/wfs/src/main/java/applicationContext.xml
+++ b/src/wfs/src/main/java/applicationContext.xml
@@ -348,11 +348,13 @@
                <constructor-arg index="0" value="propertyName"/>
                <constructor-arg index="1" value="java.lang.String"/>
                <property name="version" value="1.0.0"/>
+               <property name="service" value="wfs"/>
        </bean>
        <bean id="propertyName11KvpParser" 
class="org.geoserver.ows.NestedKvpParser">
          <constructor-arg index="0" value="propertyName"/>
          <constructor-arg index="1" value="java.lang.String"/>
          <property name="version" value="1.1.0"/>
+        <property name="service" value="wfs"/>
      </bean>
        <bean id="maxFeatureKvpParser" 
class="org.geoserver.ows.util.NumericKvpParser">
                <constructor-arg index="0" value="maxFeatures"/>
@@ -391,6 +393,7 @@
    <bean id="propertyName20KvpParser" 
class="org.geoserver.wfs.kvp.QNameNestedKvpParser">
      <constructor-arg value="propertyName"/>
      <constructor-arg ref="catalog"/>
+    <property name="service" value="wfs"/>
    </bean>
    <bean id="storedQueryIdKvpParser" 
class="org.geoserver.wfs.kvp.URIKvpParser">
      <constructor-arg value="storedQueryId"/>

Kind regards,

-- 
Ben Caradoc-Davies <[email protected]>
Software Engineer
CSIRO Earth Science and Resource Engineering
Australian Resources Research Centre



------------------------------------------------------------------------------
Got visibility?
Most devs has no idea what their production app looks like.
Find out how fast your code is with AppDynamics Lite.
http://ad.doubleclick.net/clk;262219671;13503038;y?
http://info.appdynamics.com/FreeJavaPerformanceDownload.html
_______________________________________________
Geoserver-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

Reply via email to