<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Calling a Locator in java processor - java.lang.NoSuchFieldError: DATE_PATTERNS in ArcGIS GeoEvent Server Questions</title>
    <link>https://community.esri.com/t5/arcgis-geoevent-server-questions/calling-a-locator-in-java-processor-java-lang/m-p/444939#M1905</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi all,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;As suggested, I've tried:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;gt;&amp;nbsp; 1) Build your processor using the 4.0 dependencies in your pom.xml file.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;gt;&amp;nbsp; 2) Drop your custom jar along with httpclient 4.0 (and dependencies) into GEP's deploy folder.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;however without success. I get the same error as before. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I think this comes from because my custom code calls the ARCGIS 10.1.1 Runtime provided with the GeoEvent processor and from there its own HTTP (4.2) stack is called. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The next step as I understand is to include the whole ARCGIS Runtime in a single jar of the custom component.&amp;nbsp; I've not tried this (yet).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best regards &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Rob&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 20 Mar 2014 13:36:14 GMT</pubDate>
    <dc:creator>RobUdink1</dc:creator>
    <dc:date>2014-03-20T13:36:14Z</dc:date>
    <item>
      <title>Calling a Locator in java processor - java.lang.NoSuchFieldError: DATE_PATTERNS</title>
      <link>https://community.esri.com/t5/arcgis-geoevent-server-questions/calling-a-locator-in-java-processor-java-lang/m-p/444936#M1902</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I'm building a custom java processor calling a Locator service for geocoding, following the example given in &lt;/SPAN&gt;&lt;BR /&gt;&lt;A href="http://resources.arcgis.com/en/help/runtime-java/concepts/index.html#//01qv00000016000000"&gt;http://resources.arcgis.com/en/help/runtime-java/concepts/index.html#//01qv00000016000000&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Using the following java code:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Locator locator = new Locator(DEFUALT_LOCATOR_URL, credentials);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LocatorFindParameters parameters = new LocatorFindParameters(ADDRESS);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; parameters.setMaxLocations(10); // number of results to return&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; List&amp;lt;LocatorGeocodeResult&amp;gt; results = locator.find(parameters);&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;To get it compiling en running,&amp;nbsp; a dependency for HTTP client needs to be added to the POM,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;the one also used in the ARCGIS 10.1.1 Runtime&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.apache.httpcomponents&amp;lt;/groupId&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;httpclient&amp;lt;/artifactId&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;4.2&amp;lt;/version&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;However on calling the Locator find method the following exceptions is raised:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;java.lang.NoSuchFieldError: DATE_PATTERNS&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; at com.esri.core.internal.io.handler.e.&amp;lt;init&amp;gt;(Unknown Source)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; at com.esri.core.internal.io.handler.g.newInstance(Unknown Source)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; at org.apache.http.cookie.CookieSpecRegistry.getCookieSpec(CookieSpecRegistry.java:110)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;....&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:1035)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; at com.esri.core.internal.io.handler.l.a(Unknown Source)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; at com.esri.core.internal.io.handler.l.a(Unknown Source)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; at com.esri.core.internal.tasks.a.c.c.a(Unknown Source)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; at com.esri.core.tasks.ags.geocode.Locator.find(Unknown Source)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Locally on my development PC,&amp;nbsp; I can resolve this exception by using an older httpclient version:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.apache.httpcomponents&amp;lt;/groupId&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;httpclient&amp;lt;/artifactId&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;4.0&amp;lt;/version&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;However on the target the exception still shows up in the karaf log en the GeoEvent processor effectively stops working.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Any hint on how to get this solved, or properly call a Locator within a java processor?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Rob Udink&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 14 Feb 2014 13:25:34 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-geoevent-server-questions/calling-a-locator-in-java-processor-java-lang/m-p/444936#M1902</guid>
      <dc:creator>RobUdink1</dc:creator>
      <dc:date>2014-02-14T13:25:34Z</dc:date>
    </item>
    <item>
      <title>Re: Calling a Locator in java processor - java.lang.NoSuchFieldError: DATE_PATTERNS</title>
      <link>https://community.esri.com/t5/arcgis-geoevent-server-questions/calling-a-locator-in-java-processor-java-lang/m-p/444937#M1903</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Rob,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;GEP 10.2.1 ships with httpclient 4.2.&amp;nbsp; If you need an older version, you'll need to drop it's jar files into GEP's deploy folder.&amp;nbsp; This may become an iterative process as the older jar files may also require other jar files that aren't available with GEP 10.2.1--so you may have to drop its dependencies into the the deploy folder as well.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;To summarize:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;1) Build your processor using the 4.0 dependencies in your pom.xml file.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;2) Drop your custom jar along with httpclient 4.0 (and dependencies) into GEP's deploy folder.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Hopefully this works, if it doesn't there are ways of build jar files that contain all of their dependencies you can use.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;-Javier&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 18 Feb 2014 16:51:58 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-geoevent-server-questions/calling-a-locator-in-java-processor-java-lang/m-p/444937#M1903</guid>
      <dc:creator>JavierDelgadillo</dc:creator>
      <dc:date>2014-02-18T16:51:58Z</dc:date>
    </item>
    <item>
      <title>Re: Calling a Locator in java processor - java.lang.NoSuchFieldError: DATE_PATTERNS</title>
      <link>https://community.esri.com/t5/arcgis-geoevent-server-questions/calling-a-locator-in-java-processor-java-lang/m-p/444938#M1904</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Rob,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Were you able to get this processor working?&amp;nbsp; If so would it be something you would be willing to share?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Chris&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 12 Mar 2014 20:07:32 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-geoevent-server-questions/calling-a-locator-in-java-processor-java-lang/m-p/444938#M1904</guid>
      <dc:creator>ChrisTallman</dc:creator>
      <dc:date>2014-03-12T20:07:32Z</dc:date>
    </item>
    <item>
      <title>Re: Calling a Locator in java processor - java.lang.NoSuchFieldError: DATE_PATTERNS</title>
      <link>https://community.esri.com/t5/arcgis-geoevent-server-questions/calling-a-locator-in-java-processor-java-lang/m-p/444939#M1905</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi all,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;As suggested, I've tried:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;gt;&amp;nbsp; 1) Build your processor using the 4.0 dependencies in your pom.xml file.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;gt;&amp;nbsp; 2) Drop your custom jar along with httpclient 4.0 (and dependencies) into GEP's deploy folder.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;however without success. I get the same error as before. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I think this comes from because my custom code calls the ARCGIS 10.1.1 Runtime provided with the GeoEvent processor and from there its own HTTP (4.2) stack is called. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The next step as I understand is to include the whole ARCGIS Runtime in a single jar of the custom component.&amp;nbsp; I've not tried this (yet).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best regards &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Rob&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 20 Mar 2014 13:36:14 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-geoevent-server-questions/calling-a-locator-in-java-processor-java-lang/m-p/444939#M1905</guid>
      <dc:creator>RobUdink1</dc:creator>
      <dc:date>2014-03-20T13:36:14Z</dc:date>
    </item>
    <item>
      <title>Re: Calling a Locator in java processor - java.lang.NoSuchFieldError: DATE_PATTERNS</title>
      <link>https://community.esri.com/t5/arcgis-geoevent-server-questions/calling-a-locator-in-java-processor-java-lang/m-p/444940#M1906</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Rob, Chris:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;What we've found works well in cases where merely dropping jar files in the deploy folder doesn't work is to create a jar file that bundles all of your dependencies with it.&amp;nbsp; To accomplish this, you'll need to give the maven-bundle-plugin an instruction to bundle the dependencies you need into the the jar file it generates.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This is what you'll do:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Make sure your pom.xml file packaging type is set to bundle:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[INDENT]&lt;/SPAN&gt;&lt;STRONG&gt;&amp;lt;project&amp;gt;&lt;BR /&gt;...&lt;BR /&gt;&amp;nbsp; &amp;lt;packaging&amp;gt;bundle&amp;lt;/packaging&amp;gt;&lt;BR /&gt;...&lt;BR /&gt;&amp;lt;/project&amp;gt;&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;[/INDENT]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Add your dependencies as you normally would:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[INDENT]&lt;/SPAN&gt;&lt;STRONG&gt;&amp;lt;dependencies&amp;gt;&lt;BR /&gt;...&lt;BR /&gt;&amp;lt;dependency&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.apache.httpcomponents&amp;lt;/groupId&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;httpclient&amp;lt;/artifactId&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;4.0.1&amp;lt;/version&amp;gt;&lt;BR /&gt;&amp;lt;/dependency&amp;gt;&lt;BR /&gt;...&lt;BR /&gt;&amp;lt;/dependencies&amp;gt;&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;[/INDENT]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Now, further down in your pom.xml file, you'll have a section that calls the maven-bundle-plugin.&amp;nbsp; In there, you'll need to add a line to get the dependency embedded based on the artifactId in your dependency.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[INDENT]&lt;/SPAN&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;lt;build&amp;gt;&lt;BR /&gt;...&lt;BR /&gt;&amp;lt;plugins&amp;gt;&lt;BR /&gt;...&lt;BR /&gt;&amp;nbsp; &amp;lt;plugin&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.apache.felix&amp;lt;/groupId&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;maven-bundle-plugin&amp;lt;/artifactId&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;extensions&amp;gt;true&amp;lt;/extensions&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;configuration&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;instructions&amp;gt;&lt;BR /&gt;...&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Embed-Dependency&amp;gt;httpclient;scope=compile|runtime;inline=true&amp;lt;/Embed-Dependency&amp;gt;&lt;BR /&gt;...&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/instructions&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/configuration&amp;gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;/plugin&amp;gt;&lt;BR /&gt;...&lt;BR /&gt;&amp;lt;/plugins&amp;gt;&lt;BR /&gt;...&lt;BR /&gt;&amp;lt;/build&amp;gt;&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;[/INDENT]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;The Embed-Dependency command takes a comma-separated list of dependencies keyed by artifactId's in your dependencies that you'd like to include with your jar.&amp;nbsp; We've used this in other places to solve this problem of including different versions of dependencies successfully on other projects.&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;You can find more documentation on using the Embed-Dependency plugin &lt;/SPAN&gt;&lt;A href="http://felix.apache.org/site/apache-felix-maven-bundle-plugin-bnd.html"&gt;here&lt;/A&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Hope this helps.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;-Javier&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 21 Mar 2014 16:46:31 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-geoevent-server-questions/calling-a-locator-in-java-processor-java-lang/m-p/444940#M1906</guid>
      <dc:creator>JavierDelgadillo</dc:creator>
      <dc:date>2014-03-21T16:46:31Z</dc:date>
    </item>
  </channel>
</rss>

