]
Darran Lofthouse updated WFLY-9512:
-----------------------------------
Issue Type: Bug (was: Feature Request)
JSP can't be rendered with LDAP auth with Elytron
-------------------------------------------------
Key: WFLY-9512
URL:
https://issues.jboss.org/browse/WFLY-9512
Project: WildFly
Issue Type: Bug
Affects Versions: 11.0.0.Final
Reporter: Yves Peter
Assignee: Darran Lofthouse
Attachments: application-roles.properties, application-users.properties,
sampleapp.war.zip, standalone.xml
When I try to access the attached war (
http://localhost:8080/sampleapp/index.jsp) with
the attached standalone.xml I get the exception below.
The index.jsp contains only static html. I used ActiveDirectory as LDAP server. The WAR
uses the "other" security domain, which uses LDAP for auth and roles.
Accessing the test.html (
http://localhost:8080/sampleapp/test.html) with the same content
as the index.jsp works fine over LDAP.
Changing the "default-realm" of security-domain "ApplicationDomain"
from "ldap-realm" to "ApplicationRealm" (user/pw: test/test) the
index.jsp gets displayed correctly and without an exception.
Exception:
{code}
11:13:06,305 ERROR [io.undertow.request] (default task-6) UT005023: Exception handling
request to /sampleapp/index.jsp: org.apache.jasper.JasperException: JBWEB004062: Unable to
compile class for JSP:
JBWEB004061: An error occurred at line: 15 in the generated java file
org.apache.jasper.runtime.HttpJspBase cannot be resolved to a type
JBWEB004061: An error occurred at line: 16 in the generated java file
org.apache.jasper.runtime.JspSourceDependent cannot be resolved to a type
JBWEB004061: An error occurred at line: 17 in the generated java file
org.apache.jasper.runtime.JspSourceImports cannot be resolved to a type
JBWEB004061: An error occurred at line: 19 in the generated java file
javax.servlet.jsp.JspFactory cannot be resolved to a type
JBWEB004061: An error occurred at line: 20 in the generated java file
javax.servlet.jsp.JspFactory cannot be resolved to a type
JBWEB004061: An error occurred at line: 36 in the generated java file
javax.el.ExpressionFactory cannot be resolved to a type
JBWEB004061: An error occurred at line: 37 in the generated java file
org.apache.tomcat.InstanceManager cannot be resolved to a type
JBWEB004061: An error occurred at line: 52 in the generated java file
_el_expressionfactory cannot be resolved to a variable
JBWEB004061: An error occurred at line: 52 in the generated java file
_jspxFactory cannot be resolved
JBWEB004061: An error occurred at line: 52 in the generated java file
The method getServletConfig() is undefined for the type index_jsp
JBWEB004061: An error occurred at line: 53 in the generated java file
_jsp_instancemanager cannot be resolved to a variable
JBWEB004061: An error occurred at line: 53 in the generated java file
org.apache.jasper.runtime.InstanceManagerFactory cannot be resolved to a type
JBWEB004061: An error occurred at line: 53 in the generated java file
The method getServletConfig() is undefined for the type index_jsp
JBWEB004061: An error occurred at line: 59 in the generated java file
javax.servlet.http.HttpServletRequest cannot be resolved to a type
JBWEB004061: An error occurred at line: 59 in the generated java file
javax.servlet.http.HttpServletResponse cannot be resolved to a type
JBWEB004061: An error occurred at line: 60 in the generated java file
javax.servlet.ServletException cannot be resolved to a type
JBWEB004061: An error occurred at line: 63 in the generated java file
javax.servlet.DispatcherType.ERROR cannot be resolved to a type
JBWEB004061: An error occurred at line: 64 in the generated java file
HttpServletResponse.SC_METHOD_NOT_ALLOWED cannot be resolved to a type
JBWEB004061: An error occurred at line: 68 in the generated java file
javax.servlet.jsp.PageContext cannot be resolved to a type
JBWEB004061: An error occurred at line: 69 in the generated java file
javax.servlet.http.HttpSession cannot be resolved to a type
JBWEB004061: An error occurred at line: 70 in the generated java file
javax.servlet.ServletContext cannot be resolved to a type
JBWEB004061: An error occurred at line: 71 in the generated java file
javax.servlet.ServletConfig cannot be resolved to a type
JBWEB004061: An error occurred at line: 72 in the generated java file
javax.servlet.jsp.JspWriter cannot be resolved to a type
JBWEB004061: An error occurred at line: 74 in the generated java file
javax.servlet.jsp.JspWriter cannot be resolved to a type
JBWEB004061: An error occurred at line: 75 in the generated java file
javax.servlet.jsp.PageContext cannot be resolved to a type
JBWEB004061: An error occurred at line: 81 in the generated java file
_jspxFactory cannot be resolved
JBWEB004061: An error occurred at line: 100 in the generated java file
javax.servlet.jsp.SkipPageException cannot be resolved to a type
JBWEB004061: An error occurred at line: 111 in the generated java file
ServletException cannot be resolved to a type
JBWEB004061: An error occurred at line: 114 in the generated java file
_jspxFactory cannot be resolved
Stacktrace:
at
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:95)
at
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:198)
at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:449)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:359)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:334)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:321)
at
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:652)
at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:358)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:403)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:347)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at
io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:85)
at
io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
at io.undertow.jsp.JspFileHandler.handleRequest(JspFileHandler.java:32)
at
io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
at
org.wildfly.elytron.web.undertow.server.ElytronRunAsHandler.lambda$handleRequest$1(ElytronRunAsHandler.java:68)
at
org.wildfly.security.auth.server.FlexibleIdentityAssociation.runAsFunctionEx(FlexibleIdentityAssociation.java:101)
at org.wildfly.security.auth.server.Scoped.runAsFunctionEx(Scoped.java:150)
at org.wildfly.security.auth.server.Scoped.runAs(Scoped.java:62)
at
org.wildfly.elytron.web.undertow.server.ElytronRunAsHandler.handleRequest(ElytronRunAsHandler.java:67)
at
io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:131)
at
io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
at
io.undertow.server.handlers.DisableCacheHandler.handleRequest(DisableCacheHandler.java:33)
at
io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at
io.undertow.security.handlers.AuthenticationConstraintHandler.handleRequest(AuthenticationConstraintHandler.java:53)
at
io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
at
io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
at
io.undertow.servlet.handlers.security.ServletSecurityConstraintHandler.handleRequest(ServletSecurityConstraintHandler.java:59)
at
io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
at
io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at
org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:61)
at
io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at
org.wildfly.extension.undertow.deployment.GlobalRequestControllerHandler.handleRequest(GlobalRequestControllerHandler.java:68)
at
io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at
io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:292)
at
io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:81)
at
io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:138)
at
io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:135)
at
io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
at
io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
at
org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1508)
at
org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1508)
at
org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1508)
at
org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1508)
at
io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:272)
at
io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:81)
at
io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:104)
at io.undertow.server.Connectors.executeRootHandler(Connectors.java:326)
at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:812)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
{code}