Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [geomesa-users] Configuring GeoServer for GeoMesa

Chris,

 

It didn’t look like I had duplicate copies of any jars. Here are all the “slf4j” and “log4j” jar files in the GeoServer WEB-INF/lib:

 

-rw-r--r--. 1 barnhartr barnhartr 367444 Sep 12  2013 log4j-1.2.14.jar

-rw-r--r--. 1 barnhartr barnhartr  23445 Sep 16  2013 slf4j-api-1.5.8.jar

-rw-r--r--. 1 barnhartr barnhartr   8620 Sep 16  2013 slf4j-log4j12-1.4.2.jar

 

I tried replacing these with the newer versions from Hadoop 2.4.0’s tomcat WEB-INF/lib (no impact):

 

-rw-r--r--. 1 barnhartr barnhartr 489884 May 22 09:09 log4j-1.2.17.jar

-rw-r--r--. 1 barnhartr barnhartr  26084 May 22 09:20 slf4j-api-1.7.5.jar

-rw-r--r--. 1 barnhartr barnhartr   8869 May 22 09:20 slf4j-log4j12-1.7.5.jar

 

I then replaced $GEOSERVER_HOME/lib/log4j-1.2.14.jar with its 1.2.17 version, also with no impact.

 

Bob

 

From: geomesa-users-bounces@xxxxxxxxxxxxxxxx [mailto:geomesa-users-bounces@xxxxxxxxxxxxxxxx] On Behalf Of Chris Snider
Sent: Thursday, May 22, 2014 6:16 AM
To: Geomesa User discussions; hunter@xxxxxxxx
Subject: Re: [geomesa-users] Configuring GeoServer for GeoMesa

 

Bob,

 

You are getting this error “java.lang.NoSuchMethodError: org.slf4j.Logger.isTraceEnabled()Z” which means you have at least 2 copies of the slf4j logger jar deployed for geomesa.  GeoServer comes with a log4j-1.2.14 and GeoMesa requires log4j-1.2.17 I believe (at least that is what I deploy with some of my other GeoServer extensions/apps we write).

 

Check your GeoServer folder WEB-INF/lib for log4j-X.X.X.jar and rename all of them except the one with the highest number.  Restart your container (Tomcat, JBoss, etc) and try adding the GeoMesa store again.

 

Chris Snider

Senior Software Engineer

Intelligent Software Solutions, Inc.

Direct (719) 452-7257

Description: Description: Description: cid:image001.png@01CA1F1F.CBC93990

 

From: geomesa-users-bounces@xxxxxxxxxxxxxxxx [mailto:geomesa-users-bounces@xxxxxxxxxxxxxxxx] On Behalf Of Barnhart, Bob M.
Sent: Wednesday, May 21, 2014 4:47 PM
To: hunter@xxxxxxxx; Geomesa User discussions
Subject: Re: [geomesa-users] Configuring GeoServer for GeoMesa

 

I think I’ve gotten past the “missing .jar file” issues, adding the following .jars:

 

accumulo-core.jar

accumulo-fate.jar (I002)

commons-configuration-1.6.jar (I002)

commons-lang-2.6.jar (I002)
hadoop-common-2.2.0.jar
hadoop-mapreduce-client-core-2.2.0.jar
libthrift-0.9.0.jar
zookeeper-3.4.2.jar

 

I am continuing with the instruction at http://geomesa.github.io/2014/04/17/geomesa-gdelt-analysis/.

 

I brought up GeoServer and added a new workspace (name:geomesa,url:www.geomesa.org). That went fine.

 

Then I tried to register the GeoMesa data store with GeoServer, defining the “geomesa:gdelt” data store as shown in the tutorial. I used all the same connection parameters I used to ingest the GDELT 20140507 data.

 

However, when I hit “Save” I got the following error on the web-page:

 

Error creating data store, check the parameters. Error message: Failed to connect to zookeeper (localhost:2181) within 2x zookeeper timeout period 30000

 

The GeoServer standard-error output a large number of the following errors (presumably one for each failed attempt to connect to ZooKeeper):

 

272858 [btpool0-7-SendThread(localhost:2181)] INFO org.apache.zookeeper.ClientCnxn - Socket connection established to localhost/127.0.0.1:2181, initiating session

272862 [btpool0-7-SendThread(localhost:2181)] WARN org.apache.zookeeper.ClientCnxn - Session 0x0 for server localhost/127.0.0.1:2181, unexpected error, closing socket connection and attempting reconnect

java.lang.NoSuchMethodError: org.slf4j.Logger.isTraceEnabled()Z

                at org.apache.zookeeper.ClientCnxnSocket.readConnectResult(ClientCnxnSocket.java:118)

                at org.apache.zookeeper.ClientCnxnSocketNIO.doIO(ClientCnxnSocketNIO.java:81)

                at org.apache.zookeeper.ClientCnxnSocketNIO.doTransport(ClientCnxnSocketNIO.java:366)

                at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1081)

274761 [btpool0-7-SendThread(localhost:2181)] INFO org.apache.zookeeper.ClientCnxn - Opening socket connection to server localhost/0:0:0:0:0:0:0:1:2181. Will not attempt to authenticate using SASL (unknown error)

 

However, as far as I can tell, ZooKeeper is running fine and responded to commands such as “echo ruok | nc 127.0.0.1 5111”.

 

Any ideas what might be going wrong here?

 

Thanks,

 

From: geomesa-users-bounces@xxxxxxxxxxxxxxxx [mailto:geomesa-users-bounces@xxxxxxxxxxxxxxxx] On Behalf Of Hunter Provyn
Sent: Wednesday, May 21, 2014 11:33 AM
To: geomesa-users@xxxxxxxxxxxxxxxx
Subject: Re: [geomesa-users] Configuring GeoServer for GeoMesa

 

Bob,

I think you will need:

accumulo-core.jar
hadoop-common-2.2.0.jar
hadoop-mapreduce-client-core-2.2.0.jar
libthrift-0.9.0.jar
zookeeper-3.4.2.jar

You do not need the geomesa-dist in your geoserver/WEB-INF/lib

We are planning to update the documentation with our next release, thanks for bearing with us in the meantime.

Hunter

On 05/21/2014 02:00 PM, Barnhart, Bob M. wrote:

I am trying to configure GeoServer to work with GeoMesa as described in http://geomesa.github.io/2014/04/17/geomesa-gdelt-analysis/.

 

I installed GeoServer and copied the following jar files to $GEOMESA_HOME/webapps/geoserver/WEB-INF/lib:

 

-rw-rw-r--. 1 barnhartr barnhartr 145182720 May  9 10:13 geomesa-dist-1.0.0-SNAPSHOT-distribution.tar

-rw-rw-r--. 1 barnhartr barnhartr  18352705 May 21 09:52 geomesa-plugin-1.0.0-SNAPSHOT-geoserver-plugin.jar

-rw-r--r--. 1 barnhartr barnhartr   3736955 May 21 10:24 accumulo-core.jar

drwxr-xr-x. 2 barnhartr barnhartr     12288 May 21 10:27 .

-rw-rw-r--. 1 barnhartr barnhartr   1340305 May 21 10:27 zookeeper-3.4.6.jar

 

However, when I start GeoServer, I’m getting the following exception:

 

INFO org.mortbay.log - Logging to org.slf4j.impl.SimpleLogger@4019eb89 via org.mortbay.log.Slf4jLog

367 [main] WARN org.mortbay.log - Deprecated configuration used for /usr/local/geoserver-2.5/webapps

417 [main] INFO org.mortbay.log - jetty-6.1.8

log4j:WARN File option not set for appender [geoserverlogfile].

log4j:WARN Are you using FileAppender instead of ConsoleAppender?

3659 [main] INFO /geoserver - Initializing Spring root WebApplicationContext

May 21, 2014 10:29:49 AM org.geoserver.platform.GeoServerExtensions checkContext

WARNING: Extension lookup occured, but ApplicationContext is unset.

May 21, 2014 10:29:52 AM org.geotools.factory.FactoryRegistry scanForPlugins

WARNING: Can't load a service for category "DataStoreFactorySpi". Cause is "ServiceConfigurationError: org.geotools.data.DataStoreFactorySpi: Provider geomesa.core.data.AccumuloDataStoreFactory could not be instantiated".

java.util.ServiceConfigurationError: org.geotools.data.DataStoreFactorySpi: Provider geomesa.core.data.AccumuloDataStoreFactory could not be instantiated

                at java.util.ServiceLoader.fail(ServiceLoader.java:224)

                at java.util.ServiceLoader.access$100(ServiceLoader.java:181)

                at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:377)

                . . .

 

The tutorial says that “Your local Accumulo and Zookeepers JARs also need to be available within your GeoServer’s lib directory.”.

 

The GeoMesa “Getting Started” document also says:

 

Note that you will also need other JAR files, particularly those pertaining to: accumulo-core; hadoop-core; zookeeper; libthrift; and cloudtrace. These are support services that are referenced by GeoMesa, yet are part of your base infrastructure.

 

Which other .jar files are required for GeoServer+GeoMesa and where must they be installed?

 

Thanks,

 

Bob Barnhart

Chief Systems Engineer | 858 826 5596 (Office) | 619 972 9489 (Mobile) | Robert.M.Barnhart@xxxxxxxxxx

 

 

 

_______________________________________________
geomesa-users mailing list
geomesa-users@xxxxxxxxxxxxxxxx
http://www.locationtech.org/mailman/listinfo/geomesa-users

 


Back to the top