[jboss-jira] [JBoss JIRA] (ELY-1431) JSP can't be rendered with LDAP auth with Elytron
Martin Choma (JIRA)
issues at jboss.org
Fri Nov 3 04:02:00 EDT 2017
[ https://issues.jboss.org/browse/ELY-1431?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13485476#comment-13485476 ]
Martin Choma commented on ELY-1431:
-----------------------------------
[~dlofthouse] could you revise remaining usage of getClass().getClassLoader() in SimpleDirContextFactoryBuilder?
{code:java|title=SimpleDirContextFactoryBuilder.java}
this.targetClassLoader = this.getClass().getClassLoader();
{code}
Seems to me, it is used only for DirContext and origin classloader is returned afterwards. So if there is some problem, we will hit it. But just to make sure.
Anyway is this classloader excercise in SimpleDirContextFactoryBuilder necessary? We have a lot of resources where module can be specified, but only this one is switching classloaders for some reason.
> JSP can't be rendered with LDAP auth with Elytron
> -------------------------------------------------
>
> Key: ELY-1431
> URL: https://issues.jboss.org/browse/ELY-1431
> Project: WildFly Elytron
> Issue Type: Bug
> Components: Realms
> Affects Versions: 1.1.6.Final
> Reporter: Yves Peter
> Assignee: Darran Lofthouse
> Fix For: 1.1.7.Final, 1.2.0.Beta9
>
> 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}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
More information about the jboss-jira
mailing list