dev@glassfish.java.net

Re: Glassfish 3.1 - WebSockets - NetBeans

From: Ido Ran <ido.ran_at_gmail.com>
Date: Sun, 13 Jun 2010 13:25:21 +0300

Hi,
I've continue to setup a WebSocket application using Glassfish 3.1

I've download Glassfish 3.1 nightly build
(glassfish-3.1-b04-06_10_2010.zip), I've also install the latest NetBeans
developer release (netbeans-trunk-nightly-201006130001-ml-java-windows.exe)
and now I am able to use NetBeans to work with Glassfish 3.1.

I've create a Web Application and add to it the
libraries grizzly-websockets.jar and grizzly-utils.jar to I can create the
sample chat application as described in this post (
http://www.antwerkz.com/glassfish-web-sockets-sample/)

I am able to deploy the web application but I have trouble connect to the
WebSocket.
I've try using Chrome (I read that there might be handshake problem) and
also I'm porting the library Java-WebSocket-Client (
http://github.com/adamac/Java-WebSocket-client) to .NET.

Most of the time I try to connect I see exceptions (see below) on the
NetBeans output panel. There were few times that I manage to connect from my
.NET client and receive good response from the server but it was very
random.

1. Where is the grizzly code that actually get compiled into the nightly
build of Glassfish 3.1?
In the exception I see classes like ServerHandShake which are not exist in
the branches of grizzly. Not (
https://grizzly.dev.java.net/source/browse/grizzly/branches/websockets/?rev=4221)
nor 2dot0 (
https://grizzly.dev.java.net/source/browse/grizzly/branches/2dot0/code/modules/websockets/
).

2. Who is developing this code or where should I put question and get
up-to-date about WebSocket?

Thank you,
Ido.

This is the exception stack trace I get while trying to connect to my web
socket applicaiton:


java.lang.IllegalStateException
        at
org.apache.catalina.connector.ResponseFacade.sendError(ResponseFacade.java:501)
        at
org.apache.catalina.servlets.DefaultServlet.serveResource(DefaultServlet.java:802)
        at
org.apache.catalina.servlets.DefaultServlet.doGet(DefaultServlet.java:409)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:844)
        at
org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1518)
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:277)
        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:171)
        at
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:651)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:591)
        at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
        at
com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:87)
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:158)
        at
org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:321)
        at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:222)
        at
com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:165)
        at
com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:802)
        at
com.sun.grizzly.websockets.WebSocketAsyncFilter.doFilter(WebSocketAsyncFilter.java:14)
        at
com.sun.grizzly.arp.DefaultAsyncExecutor.invokeFilters(DefaultAsyncExecutor.java:164)
        at
com.sun.grizzly.arp.DefaultAsyncExecutor.interrupt(DefaultAsyncExecutor.java:140)
        at
com.sun.grizzly.arp.AsyncProcessorTask.doTask(AsyncProcessorTask.java:90)
        at com.sun.grizzly.http.TaskBase.run(TaskBase.java:190)
        at com.sun.grizzly.http.TaskBase.execute(TaskBase.java:172)
        at
com.sun.grizzly.arp.DefaultAsyncHandler.handle(DefaultAsyncHandler.java:142)
        at
com.sun.grizzly.arp.AsyncProtocolFilter.execute(AsyncProtocolFilter.java:174)
        at
com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:135)
        at
com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:102)
        at
com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:88)
        at
com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76)
        at
com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:53)
        at
com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:57)
        at com.sun.grizzly.ContextTask.run(ContextTask.java:69)
        at
com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:526)
        at
com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:507)
        at java.lang.Thread.run(Thread.java:619)
|#]
java.lang.IllegalStateException: Already Suspended
        at com.sun.grizzly.tcp.Response.suspend(Response.java:885)
        at com.sun.grizzly.tcp.Response.suspend(Response.java:857)
        at com.sun.grizzly.tcp.Response.suspend(Response.java:831)
        at com.sun.grizzly.tcp.Response.suspend(Response.java:814)
        at
com.sun.grizzly.websockets.ServerHandShake.prepare(ServerHandShake.java:99)
        at
com.sun.grizzly.websockets.WebSocketEngine.handshake(WebSocketEngine.java:110)
        at
com.sun.grizzly.websockets.WebSocketEngine.getWebSocket(WebSocketEngine.java:57)
        at
com.sun.grizzly.websockets.WebSocketEngine.handle(WebSocketEngine.java:42)
        at
com.sun.grizzly.websockets.WebSocketAsyncFilter.doFilter(WebSocketAsyncFilter.java:12)
        at
com.sun.grizzly.arp.DefaultAsyncExecutor.invokeFilters(DefaultAsyncExecutor.java:164)
        at
com.sun.grizzly.arp.DefaultAsyncExecutor.interrupt(DefaultAsyncExecutor.java:140)
        at
com.sun.grizzly.arp.AsyncProcessorTask.doTask(AsyncProcessorTask.java:90)
        at com.sun.grizzly.http.TaskBase.run(TaskBase.java:190)
        at com.sun.grizzly.http.TaskBase.execute(TaskBase.java:172)
        at
com.sun.grizzly.arp.DefaultAsyncHandler.handle(DefaultAsyncHandler.java:142)
        at
com.sun.grizzly.arp.AsyncProtocolFilter.execute(AsyncProtocolFilter.java:174)
        at
com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:135)
        at
com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:102)
        at
com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:88)
        at
com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76)
        at
com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:53)
        at
com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:57)
        at com.sun.grizzly.ContextTask.run(ContextTask.java:69)
        at
com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:526)
        at
com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:507)
        at java.lang.Thread.run(Thread.java:619)
|#]
java.lang.RuntimeException: java.lang.IllegalStateException: Already
Suspended
        at
com.sun.grizzly.arp.AsyncProcessorTask.doTask(AsyncProcessorTask.java:108)
        at com.sun.grizzly.http.TaskBase.run(TaskBase.java:190)
        at com.sun.grizzly.http.TaskBase.execute(TaskBase.java:172)
        at
com.sun.grizzly.arp.DefaultAsyncHandler.handle(DefaultAsyncHandler.java:142)
        at
com.sun.grizzly.arp.AsyncProtocolFilter.execute(AsyncProtocolFilter.java:174)
        at
com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:135)
        at
com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:102)
        at
com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:88)
        at
com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76)
        at
com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:53)
        at
com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:57)
        at com.sun.grizzly.ContextTask.run(ContextTask.java:69)
        at
com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:526)
        at
com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:507)
        at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.IllegalStateException: Already Suspended
        at com.sun.grizzly.tcp.Response.suspend(Response.java:885)
        at com.sun.grizzly.tcp.Response.suspend(Response.java:857)
        at com.sun.grizzly.tcp.Response.suspend(Response.java:831)
        at com.sun.grizzly.tcp.Response.suspend(Response.java:814)
        at
com.sun.grizzly.websockets.ServerHandShake.prepare(ServerHandShake.java:99)
        at
com.sun.grizzly.websockets.WebSocketEngine.handshake(WebSocketEngine.java:110)
        at
com.sun.grizzly.websockets.WebSocketEngine.getWebSocket(WebSocketEngine.java:57)
        at
com.sun.grizzly.websockets.WebSocketEngine.handle(WebSocketEngine.java:42)
        at
com.sun.grizzly.websockets.WebSocketAsyncFilter.doFilter(WebSocketAsyncFilter.java:12)
        at
com.sun.grizzly.arp.DefaultAsyncExecutor.invokeFilters(DefaultAsyncExecutor.java:164)
        at
com.sun.grizzly.arp.DefaultAsyncExecutor.interrupt(DefaultAsyncExecutor.java:140)
        at
com.sun.grizzly.arp.AsyncProcessorTask.doTask(AsyncProcessorTask.java:90)
        ... 14 more
|#]
  /WEB-INF/lib
  /WEB-INF/classes|#]
  class websocketchat.TalkResource|#]
  class com.sun.jersey.multipart.impl.FormDataMultiPartDispatchProvider
  class com.sun.jersey.multipart.impl.MultiPartConfigProvider
  class com.sun.jersey.multipart.impl.MultiPartReader
  class com.sun.jersey.multipart.impl.MultiPartWriter|#]
  /WEB-INF/lib
  /WEB-INF/classes|#]
  class websocketchat.TalkResource|#]
  class com.sun.jersey.multipart.impl.FormDataMultiPartDispatchProvider
  class com.sun.jersey.multipart.impl.MultiPartConfigProvider
  class com.sun.jersey.multipart.impl.MultiPartReader
  class com.sun.jersey.multipart.impl.MultiPartWriter|#]
java.lang.IllegalStateException
        at
org.apache.catalina.connector.ResponseFacade.sendError(ResponseFacade.java:501)
        at
org.apache.catalina.servlets.DefaultServlet.serveResource(DefaultServlet.java:802)
        at
org.apache.catalina.servlets.DefaultServlet.doGet(DefaultServlet.java:409)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:844)
        at
org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1518)
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:277)
        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:171)
        at
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:651)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:591)
        at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
        at
com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:87)
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:158)
        at
org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:321)
        at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:222)
        at
com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:165)
        at
com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:802)
        at
com.sun.grizzly.websockets.WebSocketAsyncFilter.doFilter(WebSocketAsyncFilter.java:14)
        at
com.sun.grizzly.arp.DefaultAsyncExecutor.invokeFilters(DefaultAsyncExecutor.java:164)
        at
com.sun.grizzly.arp.DefaultAsyncExecutor.interrupt(DefaultAsyncExecutor.java:140)
        at
com.sun.grizzly.arp.AsyncProcessorTask.doTask(AsyncProcessorTask.java:90)
        at com.sun.grizzly.http.TaskBase.run(TaskBase.java:190)
        at com.sun.grizzly.http.TaskBase.execute(TaskBase.java:172)
        at
com.sun.grizzly.arp.DefaultAsyncHandler.handle(DefaultAsyncHandler.java:142)
        at
com.sun.grizzly.arp.AsyncProtocolFilter.execute(AsyncProtocolFilter.java:174)
        at
com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:135)
        at
com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:102)
        at
com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:88)
        at
com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76)
        at
com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:53)
        at
com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:57)
        at com.sun.grizzly.ContextTask.run(ContextTask.java:69)
        at
com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:526)
        at
com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:507)
        at java.lang.Thread.run(Thread.java:619)
|#]




On Tue, Jun 8, 2010 at 9:14 PM, Ido Ran <ido.ran_at_gmail.com> wrote:

> Little update - I am stil not able to register Glassfish V3.1 domain1 but I
> am able to create a new domain and it works great, deployed application run,
> admin site works.
> So I guess the question now is what's wrong with domain1 and why can't I
> register exist domain of Glassfish V3.1 in NetBeans?
>
> Ido
>
>
> On Tue, Jun 8, 2010 at 7:52 PM, Ido Ran <ido.ran_at_gmail.com> wrote:
>
>> Hi.
>>
>> I am trying to work with the latest nightly build of Glassfish 3.1 (
>> glassfish-3.1-b04-06_05_2010.zip) because I want to add WebSocket
>> abilities to my RESTful Web Service.
>>
>> 1. I was able to start domain1 using asadmin, but when I open a browser in
>> localhost:48484 nothing came up and I have the message bellow in the
>> server.log.
>>
>> 2. When I try to add the new glassfish to NetBeans Servers I fail to do
>> so.
>> I try to point it to several directories in glassfishv31 but it always
>> show message "C:\Program Files\glassfishv31 does not have usable default
>> domain" as warning. When I press next the register domain page show an error
>> at the bottom saying "Unsupported domain at domain1; admin-listener is
>> disabled or no enabled http-listner". So I can't add it to NetBeans IDE.
>>
>> I can do some things using asadmin, it start and stop the domain and
>> deploy application.
>>
>> Is it something wrong with my installation or is it something work with
>> the latest version?
>> Also is it possible to use Glassfish v3.1 with NetBeans?
>>
>> Thank you,
>> Ido.
>>
>>
>>
>>
>>
>> Message from server.log
>>
>>
>> [#|2010-06-08T19:14:06.890+0300|INFO|glassfish3.1|javax.enterprise.system.core.security.com.sun.enterprise.security.auth.realm|_ThreadID=71;_ThreadName=Thread-1;|Realm
>> admin-realm of classtype
>> com.sun.enterprise.security.auth.realm.file.FileRealm successfully
>> created.|#]
>>
>> [#|2010-06-08T19:14:06.890+0300|INFO|glassfish3.1|javax.enterprise.system.core.security.com.sun.enterprise.security.auth.realm|_ThreadID=71;_ThreadName=Thread-1;|Realm
>> file of classtype com.sun.enterprise.security.auth.realm.file.FileRealm
>> successfully created.|#]
>>
>> [#|2010-06-08T19:14:06.890+0300|INFO|glassfish3.1|javax.enterprise.system.core.security.com.sun.enterprise.security.auth.realm|_ThreadID=71;_ThreadName=Thread-1;|Realm
>> certificate of classtype
>> com.sun.enterprise.security.auth.realm.certificate.CertificateRealm
>> successfully created.|#]
>>
>> [#|2010-06-08T19:14:06.890+0300|INFO|glassfish3.1|javax.enterprise.system.core.security.com.sun.enterprise.security|_ThreadID=71;_ThreadName=Thread-1;|Security
>> service(s) started successfully....|#]
>>
>> [#|2010-06-08T19:14:08.968+0300|WARNING|glassfish3.1|javax.enterprise.system.tools.deployment.org.glassfish.deployment.common|_ThreadID=71;_ThreadName=Thread-1;|DPL8030:
>> Sun specific deployment descriptor (WEB-INF/sun-web.xml in archive
>> /C:/Program
>> Files/glassfishv31/glassfish/lib/install/applications/__admingui/) is
>> deprecating, please use Glassfish specific deployment descriptor
>> WEB-INF/glassfish-web.xml in the future.|#]
>>
>> [#|2010-06-08T19:14:13.859+0300|INFO|glassfish3.1|javax.enterprise.resource.webcontainer.jsf.config|_ThreadID=26;_ThreadName=Thread-1;|Initializing
>> Mojarra 2.0.2 (FCS b10) for context ''|#]
>>
>> [#|2010-06-08T19:14:15.390+0300|INFO|glassfish3.1|javax.enterprise.resource.webcontainer.jsf.config|_ThreadID=26;_ThreadName=Thread-1;|Unsanitized
>> stacktrace from failed start...
>> com.sun.faces.config.ConfigurationException:
>> java.util.concurrent.ExecutionException: javax.faces.FacesException:
>> java.io.IOException: Cannot open a foreign URL;
>> this.url=jar:file:/C:/Program%2520Files/glassfishv31/glassfish/lib/install/applications/jaxr-ra/jaxr-ra.jar!/META-INF/;
>> foreign.url=jar:file:/C:/Program%2520Files/glassfishv31/glassfish/lib/install/applications/jaxr-ra/jaxr-ra.jar!/META-INF/
>> at
>> com.sun.faces.config.ConfigManager.getConfigDocuments(ConfigManager.java:661)
>> at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:306)
>> at
>> com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:223)
>> at
>> org.apache.catalina.core.StandardContext.contextListenerStart(StandardContext.java:4678)
>> at
>> com.sun.enterprise.web.WebModule.contextListenerStart(WebModule.java:518)
>> at
>> org.apache.catalina.core.StandardContext.start(StandardContext.java:5299)
>> at com.sun.enterprise.web.WebModule.start(WebModule.java:482)
>> at
>> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:913)
>> at
>> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:897)
>> at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:681)
>> at
>> com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:1922)
>> at
>> com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:1601)
>> at com.sun.enterprise.web.WebApplication.start(WebApplication.java:87)
>> at org.glassfish.internal.data.EngineRef.start(EngineRef.java:127)
>> at org.glassfish.internal.data.ModuleInfo.start(ModuleInfo.java:242)
>> at
>> org.glassfish.internal.data.ApplicationInfo.start(ApplicationInfo.java:249)
>> at
>> com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:355)
>> at
>> com.sun.enterprise.v3.server.ApplicationLoaderService.processApplication(ApplicationLoaderService.java:363)
>> at
>> com.sun.enterprise.v3.admin.adapter.InstallerThread.load(InstallerThread.java:306)
>> at
>> com.sun.enterprise.v3.admin.adapter.InstallerThread.run(InstallerThread.java:114)
>> Caused by: java.util.concurrent.ExecutionException:
>> javax.faces.FacesException: java.io.IOException: Cannot open a foreign URL;
>> this.url=jar:file:/C:/Program%2520Files/glassfishv31/glassfish/lib/install/applications/jaxr-ra/jaxr-ra.jar!/META-INF/;
>> foreign.url=jar:file:/C:/Program%2520Files/glassfishv31/glassfish/lib/install/applications/jaxr-ra/jaxr-ra.jar!/META-INF/
>> at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
>> at java.util.concurrent.FutureTask.get(Unknown Source)
>> at
>> com.sun.faces.config.ConfigManager.getConfigDocuments(ConfigManager.java:648)
>> ... 19 more
>> Caused by: javax.faces.FacesException: java.io.IOException: Cannot open a
>> foreign URL;
>> this.url=jar:file:/C:/Program%2520Files/glassfishv31/glassfish/lib/install/applications/jaxr-ra/jaxr-ra.jar!/META-INF/;
>> foreign.url=jar:file:/C:/Program%2520Files/glassfishv31/glassfish/lib/install/applications/jaxr-ra/jaxr-ra.jar!/META-INF/
>> at
>> com.sun.faces.config.configprovider.MetaInfFacesConfigResourceProvider.getResources(MetaInfFacesConfigResourceProvider.java:134)
>> at
>> com.sun.faces.config.ConfigManager$URLTask.call(ConfigManager.java:1053)
>> at
>> com.sun.faces.config.ConfigManager$URLTask.call(ConfigManager.java:1022)
>> at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
>> at java.util.concurrent.FutureTask.run(Unknown Source)
>> at
>> com.sun.faces.config.ConfigManager.getConfigDocuments(ConfigManager.java:639)
>> ... 19 more
>> Caused by: java.io.IOException: Cannot open a foreign URL;
>> this.url=jar:file:/C:/Program%2520Files/glassfishv31/glassfish/lib/install/applications/jaxr-ra/jaxr-ra.jar!/META-INF/;
>> foreign.url=jar:file:/C:/Program%2520Files/glassfishv31/glassfish/lib/install/applications/jaxr-ra/jaxr-ra.jar!/META-INF/
>> at
>> com.sun.enterprise.loader.ASURLClassLoader$InternalURLStreamHandler.openConnection(ASURLClassLoader.java:1378)
>> at java.net.URL.openConnection(Unknown Source)
>> at com.sun.faces.facelets.util.Classpath.search(Classpath.java:103)
>> at com.sun.faces.facelets.util.Classpath.search(Classpath.java:86)
>> at
>> com.sun.faces.config.configprovider.MetaInfFacesConfigResourceProvider.loadURLs(MetaInfFacesConfigResourceProvider.java:159)
>> at
>> com.sun.faces.config.configprovider.MetaInfFacesConfigResourceProvider.getResources(MetaInfFacesConfigResourceProvider.java:107)
>> ... 24 more
>>
>
>