[Geoserver-devel] [jira] Created: (GEOS-4646) WFS Datastore + TIME support chaining

WFS Datastore + TIME support chaining
-------------------------------------

                 Key: GEOS-4646
                 URL: https://jira.codehaus.org/browse/GEOS-4646
             Project: GeoServer
          Issue Type: Bug
          Components: WFS
    Affects Versions: 2.2.x
         Environment: Java
            Reporter: Tisham Dhar
            Assignee: Tisham Dhar

Chaining of WFS with Elevation/Time support breaks the WFS DataStore since dates are not encoded properly in the (AAIME: it's a problem in the module that wfs uses to encode the ogc filter).

Stack Trace:
24 Jun 16:48:30 INFO [geoserver.wms] -
Request: getServiceInfo
24 Jun 16:48:30 WARN [data.wfs] - Query does not provide a CRS, using default: Query:
   feature type: ECOBASE:CLS_MERGED_TESTDATE
   filter: Filter.INCLUDE
   [properties: DATE_START]
> getFeatureGET: Request url: http://stadler.hba.marine.csiro.au:8080/geoserver/wfs. Parameters: {SRSNAME=urn:x-ogc:def:crs:EPSG:4326, PROPERTYNAME=DATE_START, TYPENAME=ECOBASE:CLS_MERGED_TESTDATE, VERSION=1.1.0, OUTPUTFORMAT=text/xml; subtype=gml/3.1.1, SERVICE=WFS, REQUEST=GetFeature}
Supported filter: Filter.INCLUDE
Unupported filter: Filter.INCLUDE
24 Jun 16:48:30 WARN [data.wfs] - Query does not provide a CRS, using default: Query:
   feature type: ECOBASE:CLS_MERGED_TESTDATE
   filter: Filter.INCLUDE
   [properties: DATE_START]
> getFeatureGET: Request url: http://stadler.hba.marine.csiro.au:8080/geoserver/wfs. Parameters: {SRSNAME=urn:x-ogc:def:crs:EPSG:4326, PROPERTYNAME=DATE_START, TYPENAME=ECOBASE:CLS_MERGED_TESTDATE, VERSION=1.1.0, OUTPUTFORMAT=text/xml; subtype=gml/3.1.1, SERVICE=WFS, REQUEST=GetFeature}
24 Jun 16:48:30 INFO [geoserver.wms] -
Request: getMap
  Time = [null]
  Filter = null
  Buffer = 0
  Format = application/openlayers
  Width = 299
  Filters = null
  Height = 512
  Tiled = false
  Palette = null
  SRS = EPSG:4326
  Legend = false
  Styles = [StyleImpl[ name=point]]
  Layers = [org.geoserver.wms.MapLayerInfo@anonymised.com]
  MaxFeatures = null
  Bbox = ReferencedEnvelope[-47.194 : -24.498, 118.167 : 157.0]
  FormatOptions = {}
  Angle = 0.0
  CQLFilter = null
  Elevation =
  FeatureId = null
  RemoteOwsType = null
  RemoteOwsURL = null
  Sld = null
  SldBody = null
  StartIndex = null
  ViewParams = null
  Env = {}
  Crs = GEOGCS["WGS 84",
  DATUM["World Geodetic System 1984",
    SPHEROID["WGS 84", 6378137.0, 298.257223563, AUTHORITY["EPSG","7030"]],
    AUTHORITY["EPSG","6326"]],
  PRIMEM["Greenwich", 0.0, AUTHORITY["EPSG","8901"]],
  UNIT["degree", 0.017453292519943295],
  AXIS["Geodetic longitude", EAST],
  AXIS["Geodetic latitude", NORTH],
  AUTHORITY["EPSG","4326"]]
  BgColor = java.awt.Color[r=255,g=255,b=255]
  Transparent = false
  FeatureVersion = null
  ValidateSchema = false
  SldVersion = null
  TilesOrigin = null
  Exceptions = SE_XML
  KMScore = 40
  KMattr = true
  Version = 1.1.0
  Request = GetMap
  RawKvp = {BBOX=-47.194,118.167,-24.498,157.0, VERSION=1.1.0, FORMAT=application/openlayers, SERVICE=WMS, HEIGHT=512, REQUEST=GetMap, LAYERS=sde:ECOBASE_CLS_MERGED_TESTDATE, STYLES=, WIDTH=299, SRS=EPSG:4326}
  Get = true
  BaseUrl = http://140.79.15.54:8080/geoserver/
  RequestCharset = UTF-8
24 Jun 16:48:31 INFO [geoserver.wms] -
Request: getServiceInfo
24 Jun 16:48:31 WARN [data.wfs] - Query does not provide a CRS, using default: Query:
   feature type: ECOBASE:CLS_MERGED_TESTDATE
   filter: Filter.INCLUDE
   [properties: DATE_START]
> getFeatureGET: Request url: http://stadler.hba.marine.csiro.au:8080/geoserver/wfs. Parameters: {SRSNAME=urn:x-ogc:def:crs:EPSG:4326, PROPERTYNAME=DATE_START, TYPENAME=ECOBASE:CLS_MERGED_TESTDATE, VERSION=1.1.0, OUTPUTFORMAT=text/xml; subtype=gml/3.1.1, SERVICE=WFS, REQUEST=GetFeature}
Supported filter: Filter.INCLUDE
Unupported filter: Filter.INCLUDE
24 Jun 16:48:31 WARN [data.wfs] - Query does not provide a CRS, using default: Query:
   feature type: ECOBASE:CLS_MERGED_TESTDATE
   filter: Filter.INCLUDE
   [properties: DATE_START]
> getFeatureGET: Request url: http://stadler.hba.marine.csiro.au:8080/geoserver/wfs. Parameters: {SRSNAME=urn:x-ogc:def:crs:EPSG:4326, PROPERTYNAME=DATE_START, TYPENAME=ECOBASE:CLS_MERGED_TESTDATE, VERSION=1.1.0, OUTPUTFORMAT=text/xml; subtype=gml/3.1.1, SERVICE=WFS, REQUEST=GetFeature}
Supported filter: [[ DATE_START = Mon Mar 16 11:00:00 EST 2009 ] AND org.geotools.renderer.lite.FastBBOX@anonymised.com]
Unupported filter: Filter.INCLUDE
24 Jun 16:48:31 WARN [data.wfs] - Query does not provide a CRS, using default: Query: [liteRenderer]
   feature type: ECOBASE:CLS_MERGED_TESTDATE
   filter: [[ DATE_START = Mon Mar 16 11:00:00 EST 2009 ] AND org.geotools.renderer.lite.FastBBOX@anonymised.com]
   [properties: SHAPE]
> getFeatureGET: Request url: http://stadler.hba.marine.csiro.au:8080/geoserver/wfs. Parameters: {SRSNAME=urn:x-ogc:def:crs:EPSG:4326, PROPERTYNAME=SHAPE, TYPENAME=ECOBASE:CLS_MERGED_TESTDATE, VERSION=1.1.0, OUTPUTFORMAT=text/xml; subtype=gml/3.1.1, SERVICE=WFS, REQUEST=GetFeature, FILTER=<ogc:Filter xmlns:ogc="http://www.opengis.net/ogc&quot; xmlns:gml="http://www.opengis.net/gml&quot;&gt;&lt;ogc:And&gt;&lt;ogc:PropertyIsEqualTo&gt;&lt;ogc:PropertyName&gt;DATE\_START&lt;/ogc:PropertyName&gt;&lt;ogc:Literal&gt;Mon Mar 16 11:00:00 EST 2009</ogc:Literal></ogc:PropertyIsEqualTo><ogc:BBOX><ogc:PropertyName>SHAPE</ogc:PropertyName><gml:Box><gml:coord><gml:X>-59.130630859375</gml:X><gml:Y>98.14373437500001</gml:Y></gml:coord><gml:coord><gml:X>-12.561369140625</gml:X><gml:Y>177.02326562500002</gml:Y></gml:coord></gml:Box></ogc:BBOX></ogc:And></ogc:Filter>}
24 Jun 16:48:31 WARN [geotools.xml] - results[ class java.lang.String ] is not of type class net.opengis.wfs.ResultTypeType
24 Jun 16:48:31 WARN [geotools.xml] - Binding: {http://www.opengis.net/ows\}ServiceType does not declare a target type
24 Jun 16:48:31 WARN [geotools.xml] - Binding: {http://www.opengis.net/wfs\}Base_TypeNameListType does not declare a target type
24 Jun 16:48:31 WARN [geotools.xml] - Binding: {http://www.opengis.net/wfs\}TypeNameListType does not declare a target type
24 Jun 16:48:31 ERROR [geotools.rendering] - Could not aquire feature:org.geotools.data.wfs.protocol.wfs.WFSException: WFS returned an exception. Target URL: http://stadler.hba.marine.csiro.au:8080/geoserver/wfs?PROPERTYNAME=SHAPE&SRSNAME=urn%3Ax-ogc%3Adef%3Acrs%3AEPSG%3A4326&TYPENAME=ECOBASE%3ACLS_MERGED_TESTDATE&VERSION=1.1.0&OUTPUTFORMAT=text%2Fxml%3B+subtype%3Dgml%2F3.1.1&SERVICE=WFS&REQUEST=GetFeature&FILTER=<ogc%3AFilter+xmlns%3Aogc%3D"http%3A%2F%2Fwww.opengis.net%2Fogc"+xmlns%3Agml%3D"http%3A%2F%2Fwww.opengis.net%2Fgml"><ogc%3AAnd><ogc%3APropertyIsEqualTo><ogc%3APropertyName>DATE_START<%2Fogc%3APropertyName><ogc%3ALiteral>Mon+Mar+16+11%3A00%3A00+EST+2009<%2Fogc%3ALiteral><%2Fogc%3APropertyIsEqualTo><ogc%3ABBOX><ogc%3APropertyName>SHAPE<%2Fogc%3APropertyName><gml%3ABox><gml%3Acoord><gml%3AX>-59.130630859375<%2Fgml%3AX><gml%3AY>98.14373437500001<%2Fgml%3AY><%2Fgml%3Acoord><gml%3Acoord><gml%3AX>-12.561369140625<%2Fgml%3AX><gml%3AY>177.02326562500002<%2Fgml%3AY><%2Fgml%3Acoord><%2Fgml%3ABox><%2Fogc%3ABBOX><%2Fogc%3AAnd><%2Fogc%3AFilter>. Originating request is:
<?xml version="1.0" encoding="UTF-8"?>
<wfs:GetFeature handle="GeoTools 8-SNAPSHOT WFS DataStore"
outputFormat="text/xml; subtype=gml/3.1.1" resultType="results"
service="WFS" version="1.1.0" xmlns:ogc="http://www.opengis.net/ogc&quot;
xmlns:gml="http://www.opengis.net/gml&quot;
xmlns:xlink="http://www.w3.org/1999/xlink&quot;
xmlns:ows="http://www.opengis.net/ows&quot; xmlns:wfs="http://www.opengis.net/wfs&quot;&gt;
<wfs:Query srsName="urn:x-ogc:def:crs:EPSG:4326" typeName="ECOBASE:CLS_MERGED_TESTDATE">
  <wfs:PropertyName>SHAPE</wfs:PropertyName>
  <ogc:Filter>
   <ogc:And>
    <ogc:PropertyIsEqualTo matchCase="true">
     <ogc:PropertyName>DATE_START</ogc:PropertyName>
     <ogc:Literal>Mon Mar 16 11:00:00 EST 2009</ogc:Literal>
    </ogc:PropertyIsEqualTo>
    <ogc:BBOX>
     <ogc:PropertyName>SHAPE</ogc:PropertyName>
     <gml:Envelope>
      <gml:lowerCorner>-59.130630859375 98.14373437500001</gml:lowerCorner>
      <gml:upperCorner>-12.561369140625 177.02326562500002</gml:upperCorner>
     </gml:Envelope>
    </ogc:BBOX>
   </ogc:And>
  </ogc:Filter>
</wfs:Query>
</wfs:GetFeature>

  [[java.lang.ClassCastException: java.lang.String cannot be cast to java.sql.Date
java.lang.String cannot be cast to java.sql.Date]]
java.util.NoSuchElementException: Could not aquire feature:org.geotools.data.wfs.protocol.wfs.WFSException: WFS returned an exception. Target URL: http://stadler.hba.marine.csiro.au:8080/geoserver/wfs?PROPERTYNAME=SHAPE&SRSNAME=urn%3Ax-ogc%3Adef%3Acrs%3AEPSG%3A4326&TYPENAME=ECOBASE%3ACLS_MERGED_TESTDATE&VERSION=1.1.0&OUTPUTFORMAT=text%2Fxml%3B+subtype%3Dgml%2F3.1.1&SERVICE=WFS&REQUEST=GetFeature&FILTER=<ogc%3AFilter+xmlns%3Aogc%3D"http%3A%2F%2Fwww.opengis.net%2Fogc"+xmlns%3Agml%3D"http%3A%2F%2Fwww.opengis.net%2Fgml"><ogc%3AAnd><ogc%3APropertyIsEqualTo><ogc%3APropertyName>DATE_START<%2Fogc%3APropertyName><ogc%3ALiteral>Mon+Mar+16+11%3A00%3A00+EST+2009<%2Fogc%3ALiteral><%2Fogc%3APropertyIsEqualTo><ogc%3ABBOX><ogc%3APropertyName>SHAPE<%2Fogc%3APropertyName><gml%3ABox><gml%3Acoord><gml%3AX>-59.130630859375<%2Fgml%3AX><gml%3AY>98.14373437500001<%2Fgml%3AY><%2Fgml%3Acoord><gml%3Acoord><gml%3AX>-12.561369140625<%2Fgml%3AX><gml%3AY>177.02326562500002<%2Fgml%3AY><%2Fgml%3Acoord><%2Fgml%3ABox><%2Fogc%3ABBOX><%2Fogc%3AAnd><%2Fogc%3AFilter>. Originating request is:
<?xml version="1.0" encoding="UTF-8"?>
<wfs:GetFeature handle="GeoTools 8-SNAPSHOT WFS DataStore"
outputFormat="text/xml; subtype=gml/3.1.1" resultType="results"
service="WFS" version="1.1.0" xmlns:ogc="http://www.opengis.net/ogc&quot;
xmlns:gml="http://www.opengis.net/gml&quot;
xmlns:xlink="http://www.w3.org/1999/xlink&quot;
xmlns:ows="http://www.opengis.net/ows&quot; xmlns:wfs="http://www.opengis.net/wfs&quot;&gt;
<wfs:Query srsName="urn:x-ogc:def:crs:EPSG:4326" typeName="ECOBASE:CLS_MERGED_TESTDATE">
  <wfs:PropertyName>SHAPE</wfs:PropertyName>
  <ogc:Filter>
   <ogc:And>
    <ogc:PropertyIsEqualTo matchCase="true">
     <ogc:PropertyName>DATE_START</ogc:PropertyName>
     <ogc:Literal>Mon Mar 16 11:00:00 EST 2009</ogc:Literal>
    </ogc:PropertyIsEqualTo>
    <ogc:BBOX>
     <ogc:PropertyName>SHAPE</ogc:PropertyName>
     <gml:Envelope>
      <gml:lowerCorner>-59.130630859375 98.14373437500001</gml:lowerCorner>
      <gml:upperCorner>-12.561369140625 177.02326562500002</gml:upperCorner>
     </gml:Envelope>
    </ogc:BBOX>
   </ogc:And>
  </ogc:Filter>
</wfs:Query>
</wfs:GetFeature>

  [[java.lang.ClassCastException: java.lang.String cannot be cast to java.sql.Date
java.lang.String cannot be cast to java.sql.Date]]
  at org.geotools.data.store.NoContentIterator.next(NoContentIterator.java:57)
  at org.geotools.data.store.NoContentIterator.next(NoContentIterator.java:42)
  at org.geoserver.feature.RetypingFeatureCollection$RetypingIterator.next(RetypingFeatureCollection.java:118)
  at org.geoserver.feature.RetypingFeatureCollection$RetypingIterator.next(RetypingFeatureCollection.java:1)
  at org.geotools.feature.collection.DelegateFeatureIterator.next(DelegateFeatureIterator.java:57)
  at org.geotools.data.crs.ForceCoordinateSystemIterator.next(ForceCoordinateSystemIterator.java:125)
  at org.geotools.data.crs.ForceCoordinateSystemIterator.next(ForceCoordinateSystemIterator.java:66)
  at org.geotools.renderer.lite.StreamingRenderer.drawPlain(StreamingRenderer.java:2248)
  at org.geotools.renderer.lite.StreamingRenderer.processStylers(StreamingRenderer.java:1943)
  at org.geotools.renderer.lite.StreamingRenderer.paint(StreamingRenderer.java:776)
  at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:468)
  at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:229)
  at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:1)
  at org.geoserver.wms.GetMap.executeInternal(GetMap.java:468)
  at org.geoserver.wms.GetMap.run(GetMap.java:209)
  at org.geoserver.wms.GetMap.run(GetMap.java:113)
  at org.geoserver.wms.DefaultWebMapService.getMap(DefaultWebMapService.java:352)
  at sun.reflect.GeneratedMethodAccessor274.invoke(Unknown Source)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  at java.lang.reflect.Method.invoke(Method.java:616)
  at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
  at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
  at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
  at org.geoserver.gwc.wms.CacheSeedingWebMapService.invoke(CacheSeedingWebMapService.java:60)
  at org.geoserver.gwc.wms.CacheSeedingWebMapService.invoke(CacheSeedingWebMapService.java:1)
  at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
  at org.geoserver.gwc.wms.CachingWebMapService.invoke(CachingWebMapService.java:56)
  at org.geoserver.gwc.wms.CachingWebMapService.invoke(CachingWebMapService.java:1)
  at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
  at org.geoserver.ows.util.RequestObjectLogger.invoke(RequestObjectLogger.java:54)
  at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
  at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
  at $Proxy25.getMap(Unknown Source)
  at sun.reflect.GeneratedMethodAccessor240.invoke(Unknown Source)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  at java.lang.reflect.Method.invoke(Method.java:616)
  at org.geoserver.ows.Dispatcher.execute(Dispatcher.java:630)
  at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:234)
  at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
  at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
  at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:790)
  at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:719)
  at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644)
  at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:549)
  at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
  at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
  at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093)
  at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:23)
  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
  at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:74)
  at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:45)
  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
  at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:49)
  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
  at org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:109)
  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:368)
  at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:109)
  at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)
  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
  at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:97)
  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
  at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:78)
  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
  at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:177)
  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
  at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79)
  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
  at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:169)
  at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
  at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
  at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:71)
  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
  at org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:183)
  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
  at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:41)
  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
  at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:46)
  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
  at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
  at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
  at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
  at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
  at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
  at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
  at org.mortbay.jetty.Server.handle(Server.java:324)
  at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
  at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:828)
  at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
  at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
  at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
  at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228)
  at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
Caused by: org.geotools.data.wfs.protocol.wfs.WFSException: WFS returned an exception. Target URL: http://stadler.hba.marine.csiro.au:8080/geoserver/wfs?PROPERTYNAME=SHAPE&SRSNAME=urn%3Ax-ogc%3Adef%3Acrs%3AEPSG%3A4326&TYPENAME=ECOBASE%3ACLS_MERGED_TESTDATE&VERSION=1.1.0&OUTPUTFORMAT=text%2Fxml%3B+subtype%3Dgml%2F3.1.1&SERVICE=WFS&REQUEST=GetFeature&FILTER=<ogc%3AFilter+xmlns%3Aogc%3D"http%3A%2F%2Fwww.opengis.net%2Fogc"+xmlns%3Agml%3D"http%3A%2F%2Fwww.opengis.net%2Fgml"><ogc%3AAnd><ogc%3APropertyIsEqualTo><ogc%3APropertyName>DATE_START<%2Fogc%3APropertyName><ogc%3ALiteral>Mon+Mar+16+11%3A00%3A00+EST+2009<%2Fogc%3ALiteral><%2Fogc%3APropertyIsEqualTo><ogc%3ABBOX><ogc%3APropertyName>SHAPE<%2Fogc%3APropertyName><gml%3ABox><gml%3Acoord><gml%3AX>-59.130630859375<%2Fgml%3AX><gml%3AY>98.14373437500001<%2Fgml%3AY><%2Fgml%3Acoord><gml%3Acoord><gml%3AX>-12.561369140625<%2Fgml%3AX><gml%3AY>177.02326562500002<%2Fgml%3AY><%2Fgml%3Acoord><%2Fgml%3ABox><%2Fogc%3ABBOX><%2Fogc%3AAnd><%2Fogc%3AFilter>. Originating request is:
<?xml version="1.0" encoding="UTF-8"?>
<wfs:GetFeature handle="GeoTools 8-SNAPSHOT WFS DataStore"
outputFormat="text/xml; subtype=gml/3.1.1" resultType="results"
service="WFS" version="1.1.0" xmlns:ogc="http://www.opengis.net/ogc&quot;
xmlns:gml="http://www.opengis.net/gml&quot;
xmlns:xlink="http://www.w3.org/1999/xlink&quot;
xmlns:ows="http://www.opengis.net/ows&quot; xmlns:wfs="http://www.opengis.net/wfs&quot;&gt;
<wfs:Query srsName="urn:x-ogc:def:crs:EPSG:4326" typeName="ECOBASE:CLS_MERGED_TESTDATE">
  <wfs:PropertyName>SHAPE</wfs:PropertyName>
  <ogc:Filter>
   <ogc:And>
    <ogc:PropertyIsEqualTo matchCase="true">
     <ogc:PropertyName>DATE_START</ogc:PropertyName>
     <ogc:Literal>Mon Mar 16 11:00:00 EST 2009</ogc:Literal>
    </ogc:PropertyIsEqualTo>
    <ogc:BBOX>
     <ogc:PropertyName>SHAPE</ogc:PropertyName>
     <gml:Envelope>
      <gml:lowerCorner>-59.130630859375 98.14373437500001</gml:lowerCorner>
      <gml:upperCorner>-12.561369140625 177.02326562500002</gml:upperCorner>
     </gml:Envelope>
    </ogc:BBOX>
   </ogc:And>
  </ogc:Filter>
</wfs:Query>
</wfs:GetFeature>

  [[java.lang.ClassCastException: java.lang.String cannot be cast to java.sql.Date
java.lang.String cannot be cast to java.sql.Date]]
  at org.geotools.data.wfs.v1_1_0.parsers.ExceptionReportParser.parse(ExceptionReportParser.java:102)
  at org.geotools.data.wfs.protocol.wfs.WFSExtensions.process(WFSExtensions.java:80)
  at org.geotools.data.wfs.v1_1_0.WFS_1_1_0_DataStore.getFeatureReader(WFS_1_1_0_DataStore.java:327)
  at org.geotools.data.wfs.v1_1_0.WFSFeatureCollection.reader(WFSFeatureCollection.java:168)
  at org.geotools.data.store.DataFeatureCollection.openIterator(DataFeatureCollection.java:229)
  at org.geotools.data.store.DataFeatureCollection.iterator(DataFeatureCollection.java:197)
  at org.geoserver.feature.RetypingFeatureCollection.iterator(RetypingFeatureCollection.java:44)
  at org.geoserver.feature.RetypingFeatureCollection.features(RetypingFeatureCollection.java:53)
  at org.geotools.feature.collection.DecoratingSimpleFeatureCollection.features(DecoratingSimpleFeatureCollection.java:48)
  at org.geotools.data.crs.ForceCoordinateSystemFeatureResults.openIterator(ForceCoordinateSystemFeatureResults.java:94)
  at org.geotools.feature.collection.AbstractFeatureCollection.iterator(AbstractFeatureCollection.java:342)
  at org.geotools.renderer.lite.StreamingRenderer.drawPlain(StreamingRenderer.java:2233)
  ... 87 more
24 Jun 16:48:31 ERROR [geoserver.ows] -
org.geoserver.platform.ServiceException: Rendering process failed
  at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:494)
  at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:229)
  at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:1)
  at org.geoserver.wms.GetMap.executeInternal(GetMap.java:468)
  at org.geoserver.wms.GetMap.run(GetMap.java:209)
  at org.geoserver.wms.GetMap.run(GetMap.java:113)
  at org.geoserver.wms.DefaultWebMapService.getMap(DefaultWebMapService.java:352)
  at sun.reflect.GeneratedMethodAccessor274.invoke(Unknown Source)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  at java.lang.reflect.Method.invoke(Method.java:616)
  at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
  at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
  at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
  at org.geoserver.gwc.wms.CacheSeedingWebMapService.invoke(CacheSeedingWebMapService.java:60)
  at org.geoserver.gwc.wms.CacheSeedingWebMapService.invoke(CacheSeedingWebMapService.java:1)
  at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
  at org.geoserver.gwc.wms.CachingWebMapService.invoke(CachingWebMapService.java:56)
  at org.geoserver.gwc.wms.CachingWebMapService.invoke(CachingWebMapService.java:1)
  at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
  at org.geoserver.ows.util.RequestObjectLogger.invoke(RequestObjectLogger.java:54)
  at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
  at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
  at $Proxy25.getMap(Unknown Source)
  at sun.reflect.GeneratedMethodAccessor240.invoke(Unknown Source)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  at java.lang.reflect.Method.invoke(Method.java:616)
  at org.geoserver.ows.Dispatcher.execute(Dispatcher.java:630)
  at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:234)
  at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
  at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
  at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:790)
  at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:719)
  at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644)
  at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:549)
  at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
  at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
  at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093)
  at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:23)
  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
  at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:74)
  at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:45)
  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
  at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:49)
  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
  at org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:109)
  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:368)
  at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:109)
  at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)
  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
  at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:97)
  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
  at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:78)
  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
  at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:177)
  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
  at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79)
  at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
  at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:169)
  at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
  at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
  at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:71)
  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
  at org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:183)
  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
  at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:41)
  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
  at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:46)
  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
  at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
  at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
  at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
  at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
  at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
  at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
  at org.mortbay.jetty.Server.handle(Server.java:324)
  at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
  at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:828)
  at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
  at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
  at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
  at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228)
  at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
Caused by: java.util.NoSuchElementException: Could not aquire feature:org.geotools.data.wfs.protocol.wfs.WFSException: WFS returned an exception. Target URL: http://stadler.hba.marine.csiro.au:8080/geoserver/wfs?PROPERTYNAME=SHAPE&SRSNAME=urn%3Ax-ogc%3Adef%3Acrs%3AEPSG%3A4326&TYPENAME=ECOBASE%3ACLS_MERGED_TESTDATE&VERSION=1.1.0&OUTPUTFORMAT=text%2Fxml%3B+subtype%3Dgml%2F3.1.1&SERVICE=WFS&REQUEST=GetFeature&FILTER=<ogc%3AFilter+xmlns%3Aogc%3D"http%3A%2F%2Fwww.opengis.net%2Fogc"+xmlns%3Agml%3D"http%3A%2F%2Fwww.opengis.net%2Fgml"><ogc%3AAnd><ogc%3APropertyIsEqualTo><ogc%3APropertyName>DATE_START<%2Fogc%3APropertyName><ogc%3ALiteral>Mon+Mar+16+11%3A00%3A00+EST+2009<%2Fogc%3ALiteral><%2Fogc%3APropertyIsEqualTo><ogc%3ABBOX><ogc%3APropertyName>SHAPE<%2Fogc%3APropertyName><gml%3ABox><gml%3Acoord><gml%3AX>-59.130630859375<%2Fgml%3AX><gml%3AY>98.14373437500001<%2Fgml%3AY><%2Fgml%3Acoord><gml%3Acoord><gml%3AX>-12.561369140625<%2Fgml%3AX><gml%3AY>177.02326562500002<%2Fgml%3AY><%2Fgml%3Acoord><%2Fgml%3ABox><%2Fogc%3ABBOX><%2Fogc%3AAnd><%2Fogc%3AFilter>. Originating request is:
<?xml version="1.0" encoding="UTF-8"?>
<wfs:GetFeature handle="GeoTools 8-SNAPSHOT WFS DataStore"
outputFormat="text/xml; subtype=gml/3.1.1" resultType="results"
service="WFS" version="1.1.0" xmlns:ogc="http://www.opengis.net/ogc&quot;
xmlns:gml="http://www.opengis.net/gml&quot;
xmlns:xlink="http://www.w3.org/1999/xlink&quot;
xmlns:ows="http://www.opengis.net/ows&quot; xmlns:wfs="http://www.opengis.net/wfs&quot;&gt;
<wfs:Query srsName="urn:x-ogc:def:crs:EPSG:4326" typeName="ECOBASE:CLS_MERGED_TESTDATE">
  <wfs:PropertyName>SHAPE</wfs:PropertyName>
  <ogc:Filter>
   <ogc:And>
    <ogc:PropertyIsEqualTo matchCase="true">
     <ogc:PropertyName>DATE_START</ogc:PropertyName>
     <ogc:Literal>Mon Mar 16 11:00:00 EST 2009</ogc:Literal>
    </ogc:PropertyIsEqualTo>
    <ogc:BBOX>
     <ogc:PropertyName>SHAPE</ogc:PropertyName>
     <gml:Envelope>
      <gml:lowerCorner>-59.130630859375 98.14373437500001</gml:lowerCorner>
      <gml:upperCorner>-12.561369140625 177.02326562500002</gml:upperCorner>
     </gml:Envelope>
    </ogc:BBOX>
   </ogc:And>
  </ogc:Filter>
</wfs:Query>
</wfs:GetFeature>

  [[java.lang.ClassCastException: java.lang.String cannot be cast to java.sql.Date
java.lang.String cannot be cast to java.sql.Date]]
  at org.geotools.data.store.NoContentIterator.next(NoContentIterator.java:57)
  at org.geotools.data.store.NoContentIterator.next(NoContentIterator.java:42)
  at org.geoserver.feature.RetypingFeatureCollection$RetypingIterator.next(RetypingFeatureCollection.java:118)
  at org.geoserver.feature.RetypingFeatureCollection$RetypingIterator.next(RetypingFeatureCollection.java:1)
  at org.geotools.feature.collection.DelegateFeatureIterator.next(DelegateFeatureIterator.java:57)
  at org.geotools.data.crs.ForceCoordinateSystemIterator.next(ForceCoordinateSystemIterator.java:125)
  at org.geotools.data.crs.ForceCoordinateSystemIterator.next(ForceCoordinateSystemIterator.java:66)
  at org.geotools.renderer.lite.StreamingRenderer.drawPlain(StreamingRenderer.java:2248)
  at org.geotools.renderer.lite.StreamingRenderer.processStylers(StreamingRenderer.java:1943)
  at org.geotools.renderer.lite.StreamingRenderer.paint(StreamingRenderer.java:776)
  at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:468)
  ... 84 more
Caused by: org.geotools.data.wfs.protocol.wfs.WFSException: WFS returned an exception. Target URL: http://stadler.hba.marine.csiro.au:8080/geoserver/wfs?PROPERTYNAME=SHAPE&SRSNAME=urn%3Ax-ogc%3Adef%3Acrs%3AEPSG%3A4326&TYPENAME=ECOBASE%3ACLS_MERGED_TESTDATE&VERSION=1.1.0&OUTPUTFORMAT=text%2Fxml%3B+subtype%3Dgml%2F3.1.1&SERVICE=WFS&REQUEST=GetFeature&FILTER=<ogc%3AFilter+xmlns%3Aogc%3D"http%3A%2F%2Fwww.opengis.net%2Fogc"+xmlns%3Agml%3D"http%3A%2F%2Fwww.opengis.net%2Fgml"><ogc%3AAnd><ogc%3APropertyIsEqualTo><ogc%3APropertyName>DATE_START<%2Fogc%3APropertyName><ogc%3ALiteral>Mon+Mar+16+11%3A00%3A00+EST+2009<%2Fogc%3ALiteral><%2Fogc%3APropertyIsEqualTo><ogc%3ABBOX><ogc%3APropertyName>SHAPE<%2Fogc%3APropertyName><gml%3ABox><gml%3Acoord><gml%3AX>-59.130630859375<%2Fgml%3AX><gml%3AY>98.14373437500001<%2Fgml%3AY><%2Fgml%3Acoord><gml%3Acoord><gml%3AX>-12.561369140625<%2Fgml%3AX><gml%3AY>177.02326562500002<%2Fgml%3AY><%2Fgml%3Acoord><%2Fgml%3ABox><%2Fogc%3ABBOX><%2Fogc%3AAnd><%2Fogc%3AFilter>. Originating request is:
<?xml version="1.0" encoding="UTF-8"?>
<wfs:GetFeature handle="GeoTools 8-SNAPSHOT WFS DataStore"
outputFormat="text/xml; subtype=gml/3.1.1" resultType="results"
service="WFS" version="1.1.0" xmlns:ogc="http://www.opengis.net/ogc&quot;
xmlns:gml="http://www.opengis.net/gml&quot;
xmlns:xlink="http://www.w3.org/1999/xlink&quot;
xmlns:ows="http://www.opengis.net/ows&quot; xmlns:wfs="http://www.opengis.net/wfs&quot;&gt;
<wfs:Query srsName="urn:x-ogc:def:crs:EPSG:4326" typeName="ECOBASE:CLS_MERGED_TESTDATE">
  <wfs:PropertyName>SHAPE</wfs:PropertyName>
  <ogc:Filter>
   <ogc:And>
    <ogc:PropertyIsEqualTo matchCase="true">
     <ogc:PropertyName>DATE_START</ogc:PropertyName>
     <ogc:Literal>Mon Mar 16 11:00:00 EST 2009</ogc:Literal>
    </ogc:PropertyIsEqualTo>
    <ogc:BBOX>
     <ogc:PropertyName>SHAPE</ogc:PropertyName>
     <gml:Envelope>
      <gml:lowerCorner>-59.130630859375 98.14373437500001</gml:lowerCorner>
      <gml:upperCorner>-12.561369140625 177.02326562500002</gml:upperCorner>
     </gml:Envelope>
    </ogc:BBOX>
   </ogc:And>
  </ogc:Filter>
</wfs:Query>
</wfs:GetFeature>

  [[java.lang.ClassCastException: java.lang.String cannot be cast to java.sql.Date
java.lang.String cannot be cast to java.sql.Date]]
  at org.geotools.data.wfs.v1_1_0.parsers.ExceptionReportParser.parse(ExceptionReportParser.java:102)
  at org.geotools.data.wfs.protocol.wfs.WFSExtensions.process(WFSExtensions.java:80)
  at org.geotools.data.wfs.v1_1_0.WFS_1_1_0_DataStore.getFeatureReader(WFS_1_1_0_DataStore.java:327)
  at org.geotools.data.wfs.v1_1_0.WFSFeatureCollection.reader(WFSFeatureCollection.java:168)
  at org.geotools.data.store.DataFeatureCollection.openIterator(DataFeatureCollection.java:229)
  at org.geotools.data.store.DataFeatureCollection.iterator(DataFeatureCollection.java:197)
  at org.geoserver.feature.RetypingFeatureCollection.iterator(RetypingFeatureCollection.java:44)
  at org.geoserver.feature.RetypingFeatureCollection.features(RetypingFeatureCollection.java:53)
  at org.geotools.feature.collection.DecoratingSimpleFeatureCollection.features(DecoratingSimpleFeatureCollection.java:48)
  at org.geotools.data.crs.ForceCoordinateSystemFeatureResults.openIterator(ForceCoordinateSystemFeatureResults.java:94)
  at org.geotools.feature.collection.AbstractFeatureCollection.iterator(AbstractFeatureCollection.java:342)
  at org.geotools.renderer.lite.StreamingRenderer.drawPlain(StreamingRenderer.java:2233)
  ... 87 more

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira