maobaolong created HDDS-1606:
--------------------------------
Summary: ozone s3g cannot started caused by
NoInitialContextException: xxx java.naming.factory.initial
Key: HDDS-1606
URL: https://issues.apache.org/jira/browse/HDDS-1606
Project: Hadoop Distributed Data Store
Issue Type: Bug
Affects Versions: 0.5.0
Environment: ozone-site.xml
{code:xml}
<configuration>
<property>
<name>ozone.enabled</name>
<value>true</value>
</property>
<property>
<name>ozone.metadata.dirs</name>
<value>/data0/disk1/meta</value>
</property>
<property>
<name>ozone.scm.datanode.id</name>
<value>/data0/disk1/meta/node/datanode.id</value>
</property>
<property>
<name>ozone.om.address</name>
<value>ozonemanager.hadoop.apache.org</value>
</property>
<property>
<name>ozone.om.db.dirs</name>
<value>/data0/om-db-dirs</value>
</property>
<property>
<name>ozone.scm.names</name>
<value>172.16.150.142</value>
</property>
<property>
<name>ozone.om.address</name>
<value>172.16.150.142</value>
</property>
<property>
<name>hdds.datanode.http.enabled</name>
<value>true</value>
</property>
<property>
<name>ozone.s3g.domain.name</name>
<value>s3g.internal</value>
</property>
</configuration>
{code}
Reporter: maobaolong
$ ozone s3g
/software/servers/jdk1.8.0_121/bin/java -Dproc_s3g
-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5008
-Dhadoop.log.dir=/software/servers/ozone-0.5.0-SNAPSHOT/logs
-Dhadoop.log.file=hadoop.log
-Dhadoop.home.dir=/software/servers/ozone-0.5.0-SNAPSHOT -Dhadoop.id.str=hadp
-Dhadoop.root.logger=INFO,console -Dhadoop.policy.file=hadoop-policy.xml
-Dhadoop.security.logger=INFO,NullAppender org.apache.hadoop.ozone.s3.Gateway
2019-05-29 16:46:28,056 INFO hdfs.DFSUtil: Starting Web-server for s3gateway
at: http://0.0.0.0:9878
2019-05-29 16:46:28,079 INFO util.log: Logging initialized @8123ms
2019-05-29 16:46:28,164 INFO server.AuthenticationFilter: Unable to initialize
FileSignerSecretProvider, falling back to use random secrets.
2019-05-29 16:46:28,178 INFO http.HttpRequestLog: Http request log for
http.requests.s3gateway is not defined
2019-05-29 16:46:28,188 INFO http.HttpServer2: Added global filter 'safety'
(class=org.apache.hadoop.http.HttpServer2$QuotingInputFilter)
2019-05-29 16:46:28,191 INFO http.HttpServer2: Added filter static_user_filter
(class=org.apache.hadoop.http.lib.StaticUserWebFilter$StaticUserFilter) to
context s3gateway
2019-05-29 16:46:28,191 INFO http.HttpServer2: Added filter static_user_filter
(class=org.apache.hadoop.http.lib.StaticUserWebFilter$StaticUserFilter) to
context static
2019-05-29 16:46:28,191 INFO http.HttpServer2: Added filter static_user_filter
(class=org.apache.hadoop.http.lib.StaticUserWebFilter$StaticUserFilter) to
context logs
2019-05-29 16:46:28,206 [main] INFO - Starting Ozone S3 gateway
2019-05-29 16:46:28,212 INFO http.HttpServer2: Jetty bound to port 9878
2019-05-29 16:46:28,213 INFO server.Server: jetty-9.3.24.v20180605, build
timestamp: 2018-06-06T01:11:56+08:00, git hash:
84205aa28f11a4f31f2a3b86d1bba2cc8ab69827
2019-05-29 16:46:28,241 INFO handler.ContextHandler: Started
o.e.j.s.ServletContextHandler@68f4865{/logs,file:///software/servers/ozone-0.5.0-SNAPSHOT/logs/,AVAILABLE}
2019-05-29 16:46:28,242 INFO handler.ContextHandler: Started
o.e.j.s.ServletContextHandler@39d9314d{/static,jar:file:/software/servers/ozone-0.5.0-SNAPSHOT/share/ozone/lib/hadoop-ozone-s3gateway-0.5.0-SNAPSHOT.jar!/webapps/static,AVAILABLE}
ERROR StatusLogger No Log4j 2 configuration file found. Using default
configuration (logging only errors to the console), or user programmatically
provided configurations. Set system property 'log4j2.debug' to show Log4j 2
internal initialization logging. See
https://logging.apache.org/log4j/2.x/manual/configuration.html for instructions
on how to configure Log4j 2
2019-05-29 16:46:28,974 WARN webapp.WebAppContext: Failed startup of context
o.e.j.w.WebAppContext@7487b142{/,file:///tmp/jetty-0.0.0.0-9878-s3gateway-_-any-2799631504400193724.dir/webapp/,UNAVAILABLE}{/s3gateway}
org.jboss.weld.exceptions.DefinitionException: Exception List with 1 exceptions:
Exception 0 :
java.lang.RuntimeException: javax.naming.NoInitialContextException: Need to
specify class name in environment or system property, or as an applet
parameter, or in an application resource file: java.naming.factory.initial
at
com.sun.jersey.server.impl.cdi.CDIExtension.initialize(CDIExtension.java:201)
at
com.sun.jersey.server.impl.cdi.CDIExtension.beforeBeanDiscovery(CDIExtension.java:302)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at
org.jboss.weld.injection.StaticMethodInjectionPoint.invoke(StaticMethodInjectionPoint.java:88)
at
org.jboss.weld.injection.MethodInvocationStrategy$SpecialParamPlusBeanManagerStrategy.invoke(MethodInvocationStrategy.java:144)
at
org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:299)
at
org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(ExtensionObserverMethodImpl.java:124)
at
org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:277)
at
org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:255)
at
org.jboss.weld.event.ObserverNotifier.notifySyncObservers(ObserverNotifier.java:269)
at
org.jboss.weld.event.ObserverNotifier.notify(ObserverNotifier.java:258)
at
org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:154)
at
org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:148)
at
org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:53)
at
org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:44)
at
org.jboss.weld.bootstrap.events.BeforeBeanDiscoveryImpl.fire(BeforeBeanDiscoveryImpl.java:45)
at
org.jboss.weld.bootstrap.WeldStartup.startInitialization(WeldStartup.java:393)
at
org.jboss.weld.bootstrap.WeldBootstrap.startInitialization(WeldBootstrap.java:76)
at
org.jboss.weld.environment.servlet.WeldServletLifecycle.initialize(WeldServletLifecycle.java:191)
at
org.jboss.weld.environment.servlet.Listener.contextInitialized(Listener.java:125)
at
org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:843)
at
org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:533)
at
org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:816)
at
org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:345)
at
org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1406)
at
org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1368)
at
org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:778)
at
org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:262)
at
org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:522)
at
org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at
org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
at
org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:113)
at
org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:61)
at
org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at
org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
at org.eclipse.jetty.server.Server.start(Server.java:427)
at
org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:105)
at
org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:61)
at org.eclipse.jetty.server.Server.doStart(Server.java:394)
at
org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at org.apache.hadoop.http.HttpServer2.start(HttpServer2.java:1140)
at
org.apache.hadoop.hdds.server.BaseHttpServer.start(BaseHttpServer.java:175)
at org.apache.hadoop.ozone.s3.Gateway.start(Gateway.java:58)
at org.apache.hadoop.ozone.s3.Gateway.call(Gateway.java:52)
at org.apache.hadoop.ozone.s3.Gateway.call(Gateway.java:33)
at picocli.CommandLine.execute(CommandLine.java:919)
at picocli.CommandLine.access$700(CommandLine.java:104)
at picocli.CommandLine$RunLast.handle(CommandLine.java:1083)
at picocli.CommandLine$RunLast.handle(CommandLine.java:1051)
at
picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:959)
at picocli.CommandLine.parseWithHandlers(CommandLine.java:1242)
at picocli.CommandLine.parseWithHandler(CommandLine.java:1181)
at org.apache.hadoop.hdds.cli.GenericCli.execute(GenericCli.java:65)
at org.apache.hadoop.hdds.cli.GenericCli.run(GenericCli.java:56)
at org.apache.hadoop.ozone.s3.Gateway.main(Gateway.java:44)
Caused by: javax.naming.NoInitialContextException: Need to specify class name
in environment or system property, or as an applet parameter, or in an
application resource file: java.naming.factory.initial
at
javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:662)
at
javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:313)
at
javax.naming.InitialContext.getURLOrDefaultInitCtx(InitialContext.java:350)
at javax.naming.InitialContext.getNameParser(InitialContext.java:505)
at
com.sun.jersey.server.impl.cdi.CDIExtension.diveIntoJNDIContext(CDIExtension.java:269)
at
com.sun.jersey.server.impl.cdi.CDIExtension.createJerseyConfigJNDIContext(CDIExtension.java:278)
at
com.sun.jersey.server.impl.cdi.CDIExtension.initialize(CDIExtension.java:197)
... 57 more
at
org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:46)
at
org.jboss.weld.bootstrap.events.BeforeBeanDiscoveryImpl.fire(BeforeBeanDiscoveryImpl.java:45)
at
org.jboss.weld.bootstrap.WeldStartup.startInitialization(WeldStartup.java:393)
at
org.jboss.weld.bootstrap.WeldBootstrap.startInitialization(WeldBootstrap.java:76)
at
org.jboss.weld.environment.servlet.WeldServletLifecycle.initialize(WeldServletLifecycle.java:191)
at
org.jboss.weld.environment.servlet.Listener.contextInitialized(Listener.java:125)
at
org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:843)
at
org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:533)
at
org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:816)
at
org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:345)
at
org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1406)
at
org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1368)
at
org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:778)
at
org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:262)
at
org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:522)
at
org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at
org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
at
org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:113)
at
org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:61)
at
org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at
org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
at org.eclipse.jetty.server.Server.start(Server.java:427)
at
org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:105)
at
org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:61)
at org.eclipse.jetty.server.Server.doStart(Server.java:394)
at
org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at org.apache.hadoop.http.HttpServer2.start(HttpServer2.java:1140)
at
org.apache.hadoop.hdds.server.BaseHttpServer.start(BaseHttpServer.java:175)
at org.apache.hadoop.ozone.s3.Gateway.start(Gateway.java:58)
at org.apache.hadoop.ozone.s3.Gateway.call(Gateway.java:52)
at org.apache.hadoop.ozone.s3.Gateway.call(Gateway.java:33)
at picocli.CommandLine.execute(CommandLine.java:919)
at picocli.CommandLine.access$700(CommandLine.java:104)
at picocli.CommandLine$RunLast.handle(CommandLine.java:1083)
at picocli.CommandLine$RunLast.handle(CommandLine.java:1051)
at
picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:959)
at picocli.CommandLine.parseWithHandlers(CommandLine.java:1242)
at picocli.CommandLine.parseWithHandler(CommandLine.java:1181)
at org.apache.hadoop.hdds.cli.GenericCli.execute(GenericCli.java:65)
at org.apache.hadoop.hdds.cli.GenericCli.run(GenericCli.java:56)
at org.apache.hadoop.ozone.s3.Gateway.main(Gateway.java:44)
Suppressed: java.lang.RuntimeException:
javax.naming.NoInitialContextException: Need to specify class name in
environment or system property, or as an applet parameter, or in an application
resource file: java.naming.factory.initial
at
com.sun.jersey.server.impl.cdi.CDIExtension.initialize(CDIExtension.java:201)
at
com.sun.jersey.server.impl.cdi.CDIExtension.beforeBeanDiscovery(CDIExtension.java:302)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at
org.jboss.weld.injection.StaticMethodInjectionPoint.invoke(StaticMethodInjectionPoint.java:88)
at
org.jboss.weld.injection.MethodInvocationStrategy$SpecialParamPlusBeanManagerStrategy.invoke(MethodInvocationStrategy.java:144)
at
org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:299)
at
org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(ExtensionObserverMethodImpl.java:124)
at
org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:277)
at
org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:255)
at
org.jboss.weld.event.ObserverNotifier.notifySyncObservers(ObserverNotifier.java:269)
at
org.jboss.weld.event.ObserverNotifier.notify(ObserverNotifier.java:258)
at
org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:154)
at
org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:148)
at
org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:53)
at
org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:44)
... 40 more
Caused by: javax.naming.NoInitialContextException: Need to specify
class name in environment or system property, or as an applet parameter, or in
an application resource file: java.naming.factory.initial
at
javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:662)
at
javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:313)
at
javax.naming.InitialContext.getURLOrDefaultInitCtx(InitialContext.java:350)
at
javax.naming.InitialContext.getNameParser(InitialContext.java:505)
at
com.sun.jersey.server.impl.cdi.CDIExtension.diveIntoJNDIContext(CDIExtension.java:269)
at
com.sun.jersey.server.impl.cdi.CDIExtension.createJerseyConfigJNDIContext(CDIExtension.java:278)
at
com.sun.jersey.server.impl.cdi.CDIExtension.initialize(CDIExtension.java:197)
... 57 more
2019-05-29 16:46:28,984 INFO server.AbstractConnector: Started
ServerConnector@1dd7796b{HTTP/1.1,[http/1.1]}{0.0.0.0:9878}
2019-05-29 16:46:28,984 INFO server.Server: Started @9030ms
2019-05-29 16:46:28,987 INFO server.AbstractConnector: Stopped
ServerConnector@1dd7796b{HTTP/1.1,[http/1.1]}{0.0.0.0:9878}
2019-05-29 16:46:28,989 INFO handler.ContextHandler: Stopped
o.e.j.w.WebAppContext@7487b142{/,file:///tmp/jetty-0.0.0.0-9878-s3gateway-_-any-2799631504400193724.dir/webapp/,UNAVAILABLE}{/s3gateway}
Problem starting http server
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]