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

Smoothness library incompatible as a JBoss Module #4

Closed
slominskir opened this issue Jan 11, 2023 · 1 comment
Closed

Smoothness library incompatible as a JBoss Module #4

slominskir opened this issue Jan 11, 2023 · 1 comment
Labels
wontfix This will not be worked on

Comments

@slominskir
Copy link
Member

I've been working on packaging the smoothness-weblib as a JBoss Module, which is how to avoid bundling it inside every war file (application) that uses it. Wildfly is designed to run multiple apps together in the same JVM (before days of Docker Compose!) and share libraries, and JBoss modules is how it is done (JBoss Modules was created before days of Java Platform Module System JPMS a.k.a. Jigsaw). The smoothness-weblib actually contains a tag library (TLD file) and apparently those are only "discovered" if inside a war file. There may be a workaround were we duplicate the TLD file inside each war or possibly use the jboss-deployment-structure.xml mechanism, but we also have the problem that the smoothness weblib is also a library of web resources (JSP, CSS, JavaScript, HTML, images), and those may also only be referenced if directly inside a war needing them.

If you do attempt to install smoothness-weblib as a module and then use it you'll see the very unhelpful error when you navigate your web browser to view the first JSP page:

ERROR [io.undertow.request] (default task-1) UT005023: Exception handling request to /smoothness-demo/WEB-INF/views/overview.jsp: org.apache.jasper.JasperException: JBWEB004001: Unable to compile class for JSP
        at [email protected]//org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:667)
        at [email protected]//org.apache.jasper.servlet.JspServletWrapper.loadTagFile(JspServletWrapper.java:242)
        at [email protected]//org.apache.jasper.compiler.TagFileProcessor.loadTagFile(TagFileProcessor.java:587)
...
Caused by: java.lang.NullPointerException
        at [email protected]//org.apache.jasper.compiler.TagLibraryInfoImpl.createTagFileInfo(TagLibraryInfoImpl.java:486)
        at [email protected]//org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:198)
        at [email protected]//org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:412)
...
@slominskir
Copy link
Member Author

Punting on this for now. Just package smoothness weblib with each war is fine for now (and the way it's been used for years) and we can revisit later if we want to dump a ton of time into making this work.

@slominskir slominskir closed this as not planned Won't fix, can't repro, duplicate, stale Jan 12, 2023
@slominskir slominskir added the wontfix This will not be worked on label Jan 12, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
wontfix This will not be worked on
Projects
None yet
Development

No branches or pull requests

1 participant