Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Webservice deployed from directory archive on windows fails #627

Closed
pdudits opened this issue Jan 28, 2016 · 1 comment
Closed

Webservice deployed from directory archive on windows fails #627

pdudits opened this issue Jan 28, 2016 · 1 comment

Comments

@pdudits
Copy link
Contributor

pdudits commented Jan 28, 2016

Another day, another compatibility with GF3 issue with my project's tests.

When a webservice is deployed from a directory on Windows, invocation of that webservice throws:

java.lang.IllegalArgumentException: Illegal character in path at index 13: META-INF/wsdl\ChargePointEvent.wsdl
    at java.net.URI.create(URI.java:852)
    at java.net.URI.resolve(URI.java:1036)
    at org.glassfish.webservices.EjbRuntimeEndpointInfo.prepareInvocation(EjbRuntimeEndpointInfo.java:208)
    at org.glassfish.webservices.Ejb3MessageDispatcher.handlePost(Ejb3MessageDispatcher.java:107)
    at org.glassfish.webservices.Ejb3MessageDispatcher.invoke(Ejb3MessageDispatcher.java:80)
    at org.glassfish.webservices.EjbWebServiceServlet.dispatchToEjbEndpoint(EjbWebServiceServlet.java:210)
    at org.glassfish.webservices.EjbWebServiceServlet.service(EjbWebServiceServlet.java:153)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
    at org.glassfish.grizzly.servlet.ServletHandler.doServletService(ServletHandler.java:226)
    at org.glassfish.grizzly.servlet.ServletHandler.service(ServletHandler.java:178)
    at com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459)
    at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167)
    at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:206)
    at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:180)
    at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:235)
    at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
    at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:283)
    at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:200)
    at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:132)
    at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:111)
    at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
    at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:536)
    at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)
    at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117)
    at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56)
    at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137)
    at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:591)
    at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:571)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.net.URISyntaxException: Illegal character in path at index 13: META-INF/wsdl\ChargePointEvent.wsdl
    at java.net.URI$Parser.fail(URI.java:2848)
    at java.net.URI$Parser.checkChars(URI.java:3021)
    at java.net.URI$Parser.parseHierarchical(URI.java:3105)
    at java.net.URI$Parser.parse(URI.java:3063)
    at java.net.URI.<init>(URI.java:588)
    at java.net.URI.create(URI.java:850)
    ... 28 more

The cause lies within ModuleContextValidator where in commit 41a46e4 forward slash was "fixed" by replacing it with File.separator. Fix for GLASSFISH-17039 on 3.1.2 branch did not contain this change. Since that is an uri, not a path, it should compose with forward slashes every time.

pdudits added a commit to pdudits/Payara that referenced this issue Jan 28, 2016
…tory fails

Fix for GLASSFISH-17039 contained a change in ModuleContextValidator where a
slash in fullFileUri was replaced with File.separator. However URIs are not
platform dependant and cannot contain backslashes.
@pdudits
Copy link
Contributor Author

pdudits commented Jan 29, 2016

Also reported upstream as https://java.net/jira/browse/GLASSFISH-21499.

Pandrex247 added a commit that referenced this issue Jan 29, 2016
Fix for Payara #627 - Invocation Webservice deployed from directory f…
Cousjava pushed a commit to Cousjava/Payara that referenced this issue Aug 21, 2019
PAYARA-3660: Supply Common Classloader as locator when CommonModelRegistry is unavailable

Approved-by: Andrew Pielage <andrew.pielage@payara.fish>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants