{"id":284,"date":"2013-08-07T19:13:04","date_gmt":"2013-08-07T10:13:04","guid":{"rendered":"http:\/\/www.rocher.kyoto.jp\/araburu\/?p=284"},"modified":"2013-08-07T19:13:04","modified_gmt":"2013-08-07T10:13:04","slug":"websocket%e3%81%a7serverendpoint%e3%81%8c%e9%87%8d%e8%a4%87%e3%81%97%e3%81%9f%e3%81%a8%e3%81%8d%e3%81%ae%e3%82%a8%e3%83%a9%e3%83%bc","status":"publish","type":"post","link":"https:\/\/www.rocher.kyoto.jp\/arbr\/?p=284","title":{"rendered":"WebSocket\u3067@ServerEndpoint\u304c\u91cd\u8907\u3057\u305f\u3068\u304d\u306e\u30a8\u30e9\u30fc"},"content":{"rendered":"<pre>@ServerEndpoint(\"<span style=\"color: #ff0000;\">\/hello\/<\/span>\")\r\npublic class HelloWorld {\r\n\r\n\u3068\r\n\r\n@ServerEndpoint(\"<span style=\"color: #ff0000;\">\/hello\/<\/span>\")\r\npublic class HelloJson {<\/pre>\n<p>\u3067\u8d77\u52d5\u6642\u306e<\/p>\n<p>\u60c5\u5831: Registering WebSocket filter for url pattern \/*<br \/>\n\u3068\u3044\u3063\u305f\u6b21\u306b<br \/>\nat org.apache.catalina.core.ApplicationFilterConfig.&lt;init&gt;(ApplicationFilterConfig.java:131)<br \/>\n&#8230; 46 more<br \/>\nCaused by: javax.websocket.DeploymentException: <span style=\"color: #ff0000;\">Found Equivalent paths. Added path<\/span>: &#8216;\/first\/hello\/&#8217; is equivalent with &#8216;\/first\/hello\/&#8217;.<\/p>\n<p>\u3068\u308f\u304b\u308a\u3084\u3059\u3044\u30e1\u30c3\u30bb\u30fc\u30b8\u304c\u3067\u308b\u3002<\/p>\n<p>\u4e00\u5fdc\u30b9\u30bf\u30c3\u30af\u30c8\u30ec\u30fc\u30b9<\/p>\n<pre>\u60c5\u5831: Registering WebSocket filter for url pattern \/*\r\n\u91cd\u5927: WebModule[\/first]Exception starting filter WebSocket filter\r\njava.lang.InstantiationException\r\n\u00a0\u00a0 \u00a0at org.apache.catalina.core.ApplicationFilterConfig.&lt;init&gt;(ApplicationFilterConfig.java:135)\r\n\u00a0\u00a0 \u00a0at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:5297)\r\n\u00a0\u00a0 \u00a0at org.apache.catalina.core.StandardContext.start(StandardContext.java:5909)\r\n\u00a0\u00a0 \u00a0at com.sun.enterprise.web.WebModule.start(WebModule.java:691)\r\n\u00a0\u00a0 \u00a0at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:1041)\r\n\u00a0\u00a0 \u00a0at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:1024)\r\n\u00a0\u00a0 \u00a0at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:747)\r\n\u00a0\u00a0 \u00a0at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:2278)\r\n\u00a0\u00a0 \u00a0at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:1924)\r\n\u00a0\u00a0 \u00a0at com.sun.enterprise.web.WebApplication.start(WebApplication.java:139)\r\n\u00a0\u00a0 \u00a0at org.glassfish.internal.data.EngineRef.start(EngineRef.java:122)\r\n\u00a0\u00a0 \u00a0at org.glassfish.internal.data.ModuleInfo.start(ModuleInfo.java:291)\r\n\u00a0\u00a0 \u00a0at org.glassfish.internal.data.ApplicationInfo.start(ApplicationInfo.java:352)\r\n\u00a0\u00a0 \u00a0at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:497)\r\n\u00a0\u00a0 \u00a0at com.sun.enterprise.v3.server.ApplicationLoaderService.processApplication(ApplicationLoaderService.java:407)\r\n\u00a0\u00a0 \u00a0at com.sun.enterprise.v3.server.ApplicationLoaderService.postConstruct(ApplicationLoaderService.java:243)\r\n\u00a0\u00a0 \u00a0at org.jvnet.hk2.internal.ClazzCreator.postConstructMe(ClazzCreator.java:281)\r\n\u00a0\u00a0 \u00a0at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:328)\r\n\u00a0\u00a0 \u00a0at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:448)\r\n\u00a0\u00a0 \u00a0at org.glassfish.hk2.runlevel.internal.AsyncRunLevelContext.findOrCreate(AsyncRunLevelContext.java:163)\r\n\u00a0\u00a0 \u00a0at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2204)\r\n\u00a0\u00a0 \u00a0at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:93)\r\n\u00a0\u00a0 \u00a0at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.oneJob(CurrentTaskFuture.java:673)\r\n\u00a0\u00a0 \u00a0at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.run(CurrentTaskFuture.java:660)\r\n\u00a0\u00a0 \u00a0at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$UpOneJob.run(CurrentTaskFuture.java:490)\r\n\u00a0\u00a0 \u00a0at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$UpAllTheWay.go(CurrentTaskFuture.java:362)\r\n\u00a0\u00a0 \u00a0at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$UpAllTheWay.access$100(CurrentTaskFuture.java:279)\r\n\u00a0\u00a0 \u00a0at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture.go(CurrentTaskFuture.java:113)\r\n\u00a0\u00a0 \u00a0at org.glassfish.hk2.runlevel.internal.AsyncRunLevelContext.proceedTo(AsyncRunLevelContext.java:296)\r\n\u00a0\u00a0 \u00a0at org.glassfish.hk2.runlevel.internal.RunLevelControllerImpl.proceedTo(RunLevelControllerImpl.java:66)\r\n\u00a0\u00a0 \u00a0at com.sun.enterprise.v3.server.AppServerStartup.proceedTo(AppServerStartup.java:532)\r\n\u00a0\u00a0 \u00a0at com.sun.enterprise.v3.server.AppServerStartup.run(AppServerStartup.java:329)\r\n\u00a0\u00a0 \u00a0at com.sun.enterprise.v3.server.AppServerStartup.doStart(AppServerStartup.java:226)\r\n\u00a0\u00a0 \u00a0at com.sun.enterprise.v3.server.AppServerStartup.start(AppServerStartup.java:217)\r\n\u00a0\u00a0 \u00a0at com.sun.enterprise.glassfish.bootstrap.GlassFishImpl.start(GlassFishImpl.java:79)\r\n\u00a0\u00a0 \u00a0at com.sun.enterprise.glassfish.bootstrap.GlassFishDecorator.start(GlassFishDecorator.java:63)\r\n\u00a0\u00a0 \u00a0at com.sun.enterprise.glassfish.bootstrap.osgi.EmbeddedOSGiGlassFishImpl.start(EmbeddedOSGiGlassFishImpl.java:75)\r\n\u00a0\u00a0 \u00a0at com.sun.enterprise.glassfish.bootstrap.GlassFishDecorator.start(GlassFishDecorator.java:63)\r\n\u00a0\u00a0 \u00a0at com.sun.enterprise.glassfish.bootstrap.osgi.OSGiGlassFishImpl.start(OSGiGlassFishImpl.java:71)\r\n\u00a0\u00a0 \u00a0at com.sun.enterprise.glassfish.bootstrap.GlassFishMain$Launcher.launch(GlassFishMain.java:117)\r\n\u00a0\u00a0 \u00a0at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n\u00a0\u00a0 \u00a0at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)\r\n\u00a0\u00a0 \u00a0at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\u00a0\u00a0 \u00a0at java.lang.reflect.Method.invoke(Method.java:606)\r\n\u00a0\u00a0 \u00a0at com.sun.enterprise.glassfish.bootstrap.GlassFishMain.main(GlassFishMain.java:97)\r\n\u00a0\u00a0 \u00a0at com.sun.enterprise.glassfish.bootstrap.ASMain.main(ASMain.java:54)\r\nCaused by: javax.servlet.ServletException: Web socket server initialization failed.\r\n\u00a0\u00a0 \u00a0at org.glassfish.tyrus.servlet.TyrusServletFilter.init(TyrusServletFilter.java:135)\r\n\u00a0\u00a0 \u00a0at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:275)\r\n\u00a0\u00a0 \u00a0at org.apache.catalina.core.ApplicationFilterConfig.&lt;init&gt;(ApplicationFilterConfig.java:131)\r\n\u00a0\u00a0 \u00a0... 45 more\r\nCaused by: javax.websocket.DeploymentException: Found Equivalent paths. Added path: '\/first\/hello\/' is equivalent with '\/first\/hello\/'.\r\n\u00a0\u00a0 \u00a0at org.glassfish.tyrus.core.ErrorCollector.composeComprehensiveException(ErrorCollector.java:83)\r\n\u00a0\u00a0 \u00a0at org.glassfish.tyrus.server.TyrusServerContainer.start(TyrusServerContainer.java:144)\r\n\u00a0\u00a0 \u00a0at org.glassfish.tyrus.servlet.TyrusServletFilter.init(TyrusServletFilter.java:133)\r\n\u00a0\u00a0 \u00a0... 47 more\r\n\r\n\u60c5\u5831: Loading application [first] at [\/first]\r\n\u60c5\u5831: Loading application first done in 920 ms\r\n\u60c5\u5831: GlassFish Server Open Source Edition\u00a0 4.0\u00a0 (89) startup time : Felix (2,834ms), startup services(5,306ms), total(8,140ms)\r\n\u60c5\u5831: Initiating Jersey application, version Jersey: 2.0 2013-05-03 14:50:15...\r\n\u60c5\u5831: JMXStartupService has started JMXConnector on JMXService URL service:jmx:rmi:\/\/epeapc01-PC:8686\/jndi\/rmi:\/\/epeapc01-PC:8686\/jmxrmi\r\n\u60c5\u5831: Grizzly Framework 2.3.1 started in: 10ms - bound to [\/0.0.0.0:7,676]\r\n\u60c5\u5831: Registered com.sun.enterprise.glassfish.bootstrap.osgi.EmbeddedOSGiGlassFishImpl@30c2555a as OSGi service registration: org.apache.felix.framework.ServiceRegistrationImpl@19bd20.\r\n\r\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>@ServerEndpoint(&#8220;\/hello\/&#8221;) public class HelloWorld { \u3068 @ServerEndpoint(&#8220;\/hello\/&#8221;) public class HelloJson { \u3067\u8d77\u52d5 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[9,70,7,6,16],"class_list":["post-284","post","type-post","status-publish","format-standard","hentry","category-javaee","tag-glassfish","tag-javaee","tag-jsr-356","tag-websocket","tag-16"],"_links":{"self":[{"href":"https:\/\/www.rocher.kyoto.jp\/arbr\/index.php?rest_route=\/wp\/v2\/posts\/284","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.rocher.kyoto.jp\/arbr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.rocher.kyoto.jp\/arbr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.rocher.kyoto.jp\/arbr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rocher.kyoto.jp\/arbr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=284"}],"version-history":[{"count":1,"href":"https:\/\/www.rocher.kyoto.jp\/arbr\/index.php?rest_route=\/wp\/v2\/posts\/284\/revisions"}],"predecessor-version":[{"id":285,"href":"https:\/\/www.rocher.kyoto.jp\/arbr\/index.php?rest_route=\/wp\/v2\/posts\/284\/revisions\/285"}],"wp:attachment":[{"href":"https:\/\/www.rocher.kyoto.jp\/arbr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=284"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rocher.kyoto.jp\/arbr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=284"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rocher.kyoto.jp\/arbr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=284"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}