[JBoss JIRA] (JGRP-2241) Bundler using direct memory as buffer
by Bela Ban (JIRA)
[ https://issues.jboss.org/browse/JGRP-2241?page=com.atlassian.jira.plugin.... ]
Bela Ban updated JGRP-2241:
---------------------------
Fix Version/s: 4.0.13
(was: 4.0.12)
> Bundler using direct memory as buffer
> -------------------------------------
>
> Key: JGRP-2241
> URL: https://issues.jboss.org/browse/JGRP-2241
> Project: JGroups
> Issue Type: Feature Request
> Reporter: Bela Ban
> Assignee: Bela Ban
> Fix For: 4.0.13
>
>
> The current bundler impls use a byte[] array in an output stream as buffer into which messages are written.
> If we instead used a direct byte buffer (off-heap), the JDK would not create an additional copy but simply pass the contents to the corresponding socket. This would reduce the memory allocation rate.
> Direct buffers can also be used on the receiver side, investigate.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 11 months
[JBoss JIRA] (DROOLS-2581) Java-level deadlock in Drools ProjectClassLoader
by Kylin Soong (JIRA)
[ https://issues.jboss.org/browse/DROOLS-2581?page=com.atlassian.jira.plugi... ]
Kylin Soong commented on DROOLS-2581:
-------------------------------------
Hit this issue again, I have collected a thread dump as attachments.
> Java-level deadlock in Drools ProjectClassLoader
> ------------------------------------------------
>
> Key: DROOLS-2581
> URL: https://issues.jboss.org/browse/DROOLS-2581
> Project: Drools
> Issue Type: Bug
> Components: core engine
> Affects Versions: 7.5.0.Final
> Environment: * 7.5.0.Final-redhat-4 from RHDM 7.0
> Reporter: Kylin Soong
> Assignee: Mario Fusco
> Priority: Critical
> Attachments: t.dump
>
>
> After install the RHDM 7.0 and started it, it's not possible to restart or stop, Java-level deadlock cause this:
> {code}
> Found one Java-level deadlock:
> =============================
> "ForkJoinPool.commonPool-worker-1":
> waiting to lock monitor 0x000000000418a588 (object 0x00000006e56789b8, a org.drools.core.common.ProjectClassLoader),
> which is held by "EJB default - 1"
> "EJB default - 1":
> waiting to lock monitor 0x0000000007fd7bc8 (object 0x00000006e77d7a78, a org.drools.core.common.ProjectClassLoader$DefaultInternalTypesClassLoader),
> which is held by "ForkJoinPool.commonPool-worker-1"
> Java stack information for the threads listed above:
> ===================================================
> "ForkJoinPool.commonPool-worker-1":
> at java.lang.ClassLoader.loadClass(ClassLoader.java:404)
> - waiting to lock <0x00000006e56789b8> (a org.drools.core.common.ProjectClassLoader)
> at org.drools.core.common.ProjectClassLoader.internalLoadClass(ProjectClassLoader.java:167)
> at org.drools.core.common.ProjectClassLoader$DefaultInternalTypesClassLoader.loadClass(ProjectClassLoader.java:423)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
> at java.lang.Class.getDeclaredFields0(Native Method)
> at java.lang.Class.privateGetDeclaredFields(Class.java:2583)
> at java.lang.Class.getDeclaredFields(Class.java:1916)
> at org.drools.compiler.builder.impl.TypeDeclarationCache.processFieldsPosition(TypeDeclarationCache.java:206)
> at org.drools.compiler.builder.impl.TypeDeclarationCache.initTypeDeclaration(TypeDeclarationCache.java:151)
> at org.drools.compiler.builder.impl.TypeDeclarationCache.getAndRegisterTypeDeclaration(TypeDeclarationCache.java:91)
> at org.drools.compiler.builder.impl.TypeDeclarationBuilder.getAndRegisterTypeDeclaration(TypeDeclarationBuilder.java:69)
> at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.getAndRegisterTypeDeclaration(KnowledgeBuilderImpl.java:1860)
> at org.drools.compiler.rule.builder.PatternBuilder.processClassObjectType(PatternBuilder.java:306)
> at org.drools.compiler.rule.builder.PatternBuilder.build(PatternBuilder.java:181)
> at org.drools.compiler.rule.builder.PatternBuilder.build(PatternBuilder.java:151)
> at org.drools.compiler.rule.builder.PatternBuilder.build(PatternBuilder.java:133)
> at org.drools.compiler.rule.builder.GroupElementBuilder.build(GroupElementBuilder.java:66)
> at org.drools.compiler.rule.builder.RuleBuilder.build(RuleBuilder.java:105)
> at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.addRule(KnowledgeBuilderImpl.java:1281)
> at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.lambda$compileRulesLevel$3(KnowledgeBuilderImpl.java:1242)
> at org.drools.compiler.builder.impl.KnowledgeBuilderImpl$$Lambda$1035/1743914198.accept(Unknown Source)
> at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
> at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
> at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
> at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
> at java.util.stream.ForEachOps$ForEachTask.compute(ForEachOps.java:291)
> at java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:731)
> at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
> at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
> at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
> at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
> "EJB default - 1":
> at java.lang.ClassLoader.loadClass(ClassLoader.java:404)
> - waiting to lock <0x00000006e77d7a78> (a org.drools.core.common.ProjectClassLoader$DefaultInternalTypesClassLoader)
> at org.drools.core.common.ProjectClassLoader$DefaultInternalTypesClassLoader.loadType(ProjectClassLoader.java:431)
> at org.drools.core.common.ProjectClassLoader.loadType(ProjectClassLoader.java:177)
> at org.drools.core.common.ProjectClassLoader.loadClass(ProjectClassLoader.java:149)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
> at java.lang.Class.forName0(Native Method)
> at java.lang.Class.forName(Class.java:348)
> at org.mvel2.util.ParseTools.forNameWithInner(ParseTools.java:2178)
> at org.mvel2.ParserConfiguration.checkForDynamicImport(ParserConfiguration.java:154)
> at org.mvel2.ParserConfiguration.hasImport(ParserConfiguration.java:175)
> at org.mvel2.ParserContext.hasImport(ParserContext.java:386)
> at org.mvel2.compiler.PropertyVerifier.getBeanProperty(PropertyVerifier.java:175)
> at org.mvel2.compiler.PropertyVerifier.analyze(PropertyVerifier.java:132)
> at org.mvel2.compiler.ExpressionCompiler.verify(ExpressionCompiler.java:392)
> at org.mvel2.compiler.ExpressionCompiler._compile(ExpressionCompiler.java:281)
> at org.mvel2.util.ParseTools.subCompileExpression(ParseTools.java:2064)
> at org.mvel2.ast.Negation.<init>(Negation.java:40)
> at org.mvel2.compiler.AbstractParser.nextToken(AbstractParser.java:1233)
> at org.mvel2.compiler.ExpressionCompiler._compile(ExpressionCompiler.java:126)
> at org.mvel2.compiler.ExpressionCompiler.compile(ExpressionCompiler.java:67)
> at org.mvel2.MVEL.analyze(MVEL.java:680)
> at org.mvel2.MVEL.analyze(MVEL.java:685)
> at org.drools.compiler.rule.builder.dialect.mvel.MVELExprAnalyzer.analyzeExpression(MVELExprAnalyzer.java:130)
> at org.drools.compiler.rule.builder.dialect.mvel.MVELDialect.analyzeExpression(MVELDialect.java:509)
> at org.drools.compiler.rule.builder.dialect.mvel.MVELDialect.analyzeExpression(MVELDialect.java:491)
> at org.drools.compiler.rule.builder.PatternBuilder.buildAnalysis(PatternBuilder.java:1602)
> at org.drools.compiler.rule.builder.PatternBuilder.buildEval(PatternBuilder.java:1497)
> at org.drools.compiler.rule.builder.PatternBuilder.createAndBuildPredicate(PatternBuilder.java:1339)
> at org.drools.compiler.rule.builder.PatternBuilder.buildExpression(PatternBuilder.java:974)
> at org.drools.compiler.rule.builder.PatternBuilder.buildCcdDescr(PatternBuilder.java:946)
> at org.drools.compiler.rule.builder.PatternBuilder.build(PatternBuilder.java:767)
> at org.drools.compiler.rule.builder.PatternBuilder.processConstraintsAndBinds(PatternBuilder.java:627)
> at org.drools.compiler.rule.builder.PatternBuilder.build(PatternBuilder.java:184)
> at org.drools.compiler.rule.builder.PatternBuilder.build(PatternBuilder.java:151)
> at org.drools.compiler.rule.builder.PatternBuilder.build(PatternBuilder.java:133)
> at org.drools.compiler.rule.builder.GroupElementBuilder.build(GroupElementBuilder.java:66)
> at org.drools.compiler.rule.builder.RuleBuilder.build(RuleBuilder.java:105)
> at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.addRule(KnowledgeBuilderImpl.java:1281)
> at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.lambda$compileRulesLevel$3(KnowledgeBuilderImpl.java:1242)
> at org.drools.compiler.builder.impl.KnowledgeBuilderImpl$$Lambda$1035/1743914198.accept(Unknown Source)
> at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
> at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
> at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
> at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
> at java.util.stream.ForEachOps$ForEachTask.compute(ForEachOps.java:291)
> at java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:731)
> at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
> at java.util.concurrent.ForkJoinTask.doInvoke(ForkJoinTask.java:401)
> at java.util.concurrent.ForkJoinTask.invoke(ForkJoinTask.java:734)
> at java.util.stream.ForEachOps$ForEachOp.evaluateParallel(ForEachOps.java:160)
> at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateParallel(ForEachOps.java:174)
> at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:233)
> at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418)
> at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.compileRulesLevel(KnowledgeBuilderImpl.java:1238)
> at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.compileRules(KnowledgeBuilderImpl.java:1218)
> at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.compileKnowledgePackages(KnowledgeBuilderImpl.java:1056)
> at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.buildRules(KnowledgeBuilderImpl.java:2630)
> at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.buildPackages(KnowledgeBuilderImpl.java:2565)
> at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.buildPackages(CompositeKnowledgeBuilderImpl.java:109)
> at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:99)
> at org.drools.compiler.kie.builder.impl.AbstractKieProject.buildKnowledgePackages(AbstractKieProject.java:238)
> at org.drools.compiler.kie.builder.impl.AbstractKieProject.verify(AbstractKieProject.java:65)
> at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildKieProject(KieBuilderImpl.java:356)
> at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildKieModule(KieBuilderImpl.java:348)
> at org.kie.scanner.KieRepositoryScannerImpl.build(KieRepositoryScannerImpl.java:248)
> at org.kie.scanner.KieRepositoryScannerImpl.buildArtifact(KieRepositoryScannerImpl.java:198)
> at org.kie.scanner.KieRepositoryScannerImpl.loadArtifact(KieRepositoryScannerImpl.java:154)
> at org.kie.scanner.KieRepositoryScannerImpl.loadArtifact(KieRepositoryScannerImpl.java:149)
> - locked <0x00000006e6e94d50> (a org.kie.scanner.KieRepositoryScannerImpl)
> at org.drools.compiler.kie.builder.impl.KieRepositoryImpl.loadKieModuleFromMavenRepo(KieRepositoryImpl.java:192)
> at org.drools.compiler.kie.builder.impl.KieRepositoryImpl.getKieModule(KieRepositoryImpl.java:138)
> at org.drools.compiler.kie.builder.impl.KieRepositoryImpl.getKieModule(KieRepositoryImpl.java:115)
> at org.drools.compiler.kie.builder.impl.KieServicesImpl.newKieContainer(KieServicesImpl.java:184)
> at org.drools.compiler.kie.builder.impl.KieServicesImpl.newKieContainer(KieServicesImpl.java:176)
> at org.kie.server.services.impl.KieServerImpl.createContainer(KieServerImpl.java:269)
> - locked <0x00000006e6d9c1a0> (a org.kie.server.services.impl.KieContainerInstanceImpl)
> at org.kie.server.services.impl.ContainerManager.installContainersSync(ContainerManager.java:43)
> at org.kie.server.services.impl.ContainerManager.installContainers(ContainerManager.java:33)
> at org.kie.server.jms.ContainerManagerEJB.installContainers(ContainerManagerEJB.java:38)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at org.jboss.as.ee.component.ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptor.java:52)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:509)
> at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.doMethodInterception(Jsr299BindingsInterceptor.java:90)
> at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.processInvocation(Jsr299BindingsInterceptor.java:101)
> at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:63)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ejb3.component.invocationmetrics.ExecutionTimeInterceptor.processInvocation(ExecutionTimeInterceptor.java:43)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ejb3.tx.EjbBMTInterceptor.handleInvocation(EjbBMTInterceptor.java:103)
> at org.jboss.as.ejb3.tx.BMTInterceptor.processInvocation(BMTInterceptor.java:58)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ee.concurrent.ConcurrentContextInterceptor.processInvocation(ConcurrentContextInterceptor.java:45)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.invocation.InitialInterceptor.processInvocation(InitialInterceptor.java:40)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:53)
> at org.jboss.as.ee.component.interceptors.ComponentDispatcherInterceptor.processInvocation(ComponentDispatcherInterceptor.java:52)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ejb3.component.singleton.SingletonComponentInstanceAssociationInterceptor.processInvocation(SingletonComponentInstanceAssociationInterceptor.java:53)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:509)
> at org.jboss.weld.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:73)
> at org.jboss.as.weld.ejb.EjbRequestScopeActivationInterceptor.processInvocation(EjbRequestScopeActivationInterceptor.java:89)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ejb3.component.interceptors.CurrentInvocationContextInterceptor.processInvocation(CurrentInvocationContextInterceptor.java:41)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ejb3.component.invocationmetrics.WaitTimeInterceptor.processInvocation(WaitTimeInterceptor.java:47)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ejb3.security.SecurityContextInterceptor.processInvocation(SecurityContextInterceptor.java:100)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ejb3.deployment.processors.StartupAwaitInterceptor.processInvocation(StartupAwaitInterceptor.java:22)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:509)
> at org.jboss.as.ejb3.concurrency.ContainerManagedConcurrencyInterceptor.processInvocation(ContainerManagedConcurrencyInterceptor.java:110)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ejb3.component.interceptors.ShutDownInterceptorFactory$1.processInvocation(ShutDownInterceptorFactory.java:64)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ejb3.component.interceptors.LoggingInterceptor.processInvocation(LoggingInterceptor.java:67)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ee.component.NamespaceContextInterceptor.processInvocation(NamespaceContextInterceptor.java:50)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ejb3.component.interceptors.AdditionalSetupInterceptor.processInvocation(AdditionalSetupInterceptor.java:54)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.invocation.ContextClassLoaderInterceptor.processInvocation(ContextClassLoaderInterceptor.java:60)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.invocation.InterceptorContext.run(InterceptorContext.java:438)
> at org.wildfly.security.manager.WildFlySecurityManager.doChecked(WildFlySecurityManager.java:609)
> at org.jboss.invocation.AccessCheckingInterceptor.processInvocation(AccessCheckingInterceptor.java:57)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:53)
> at org.jboss.as.ee.component.ViewService$View.invoke(ViewService.java:198)
> at org.jboss.as.ee.component.ViewDescription$1.processInvocation(ViewDescription.java:185)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ejb3.component.interceptors.LogDiagnosticContextRecoveryInterceptor.processInvocation(LogDiagnosticContextRecoveryInterceptor.java:82)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ejb3.component.interceptors.AsyncFutureInterceptorFactory$2$2.runInvocation(AsyncFutureInterceptorFactory.java:152)
> at org.jboss.as.ejb3.component.interceptors.AsyncInvocationTask.run(AsyncInvocationTask.java:81)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
> at java.lang.Thread.run(Thread.java:748)
> at org.jboss.threads.JBossThread.run(JBossThread.java:320)
> Found 1 deadlock.
> {code}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 11 months
[JBoss JIRA] (DROOLS-2581) Java-level deadlock in Drools ProjectClassLoader
by Kylin Soong (JIRA)
[ https://issues.jboss.org/browse/DROOLS-2581?page=com.atlassian.jira.plugi... ]
Kylin Soong updated DROOLS-2581:
--------------------------------
Attachment: t.dump
> Java-level deadlock in Drools ProjectClassLoader
> ------------------------------------------------
>
> Key: DROOLS-2581
> URL: https://issues.jboss.org/browse/DROOLS-2581
> Project: Drools
> Issue Type: Bug
> Components: core engine
> Affects Versions: 7.5.0.Final
> Environment: * 7.5.0.Final-redhat-4 from RHDM 7.0
> Reporter: Kylin Soong
> Assignee: Mario Fusco
> Priority: Critical
> Attachments: t.dump
>
>
> After install the RHDM 7.0 and started it, it's not possible to restart or stop, Java-level deadlock cause this:
> {code}
> Found one Java-level deadlock:
> =============================
> "ForkJoinPool.commonPool-worker-1":
> waiting to lock monitor 0x000000000418a588 (object 0x00000006e56789b8, a org.drools.core.common.ProjectClassLoader),
> which is held by "EJB default - 1"
> "EJB default - 1":
> waiting to lock monitor 0x0000000007fd7bc8 (object 0x00000006e77d7a78, a org.drools.core.common.ProjectClassLoader$DefaultInternalTypesClassLoader),
> which is held by "ForkJoinPool.commonPool-worker-1"
> Java stack information for the threads listed above:
> ===================================================
> "ForkJoinPool.commonPool-worker-1":
> at java.lang.ClassLoader.loadClass(ClassLoader.java:404)
> - waiting to lock <0x00000006e56789b8> (a org.drools.core.common.ProjectClassLoader)
> at org.drools.core.common.ProjectClassLoader.internalLoadClass(ProjectClassLoader.java:167)
> at org.drools.core.common.ProjectClassLoader$DefaultInternalTypesClassLoader.loadClass(ProjectClassLoader.java:423)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
> at java.lang.Class.getDeclaredFields0(Native Method)
> at java.lang.Class.privateGetDeclaredFields(Class.java:2583)
> at java.lang.Class.getDeclaredFields(Class.java:1916)
> at org.drools.compiler.builder.impl.TypeDeclarationCache.processFieldsPosition(TypeDeclarationCache.java:206)
> at org.drools.compiler.builder.impl.TypeDeclarationCache.initTypeDeclaration(TypeDeclarationCache.java:151)
> at org.drools.compiler.builder.impl.TypeDeclarationCache.getAndRegisterTypeDeclaration(TypeDeclarationCache.java:91)
> at org.drools.compiler.builder.impl.TypeDeclarationBuilder.getAndRegisterTypeDeclaration(TypeDeclarationBuilder.java:69)
> at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.getAndRegisterTypeDeclaration(KnowledgeBuilderImpl.java:1860)
> at org.drools.compiler.rule.builder.PatternBuilder.processClassObjectType(PatternBuilder.java:306)
> at org.drools.compiler.rule.builder.PatternBuilder.build(PatternBuilder.java:181)
> at org.drools.compiler.rule.builder.PatternBuilder.build(PatternBuilder.java:151)
> at org.drools.compiler.rule.builder.PatternBuilder.build(PatternBuilder.java:133)
> at org.drools.compiler.rule.builder.GroupElementBuilder.build(GroupElementBuilder.java:66)
> at org.drools.compiler.rule.builder.RuleBuilder.build(RuleBuilder.java:105)
> at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.addRule(KnowledgeBuilderImpl.java:1281)
> at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.lambda$compileRulesLevel$3(KnowledgeBuilderImpl.java:1242)
> at org.drools.compiler.builder.impl.KnowledgeBuilderImpl$$Lambda$1035/1743914198.accept(Unknown Source)
> at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
> at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
> at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
> at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
> at java.util.stream.ForEachOps$ForEachTask.compute(ForEachOps.java:291)
> at java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:731)
> at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
> at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
> at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
> at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
> "EJB default - 1":
> at java.lang.ClassLoader.loadClass(ClassLoader.java:404)
> - waiting to lock <0x00000006e77d7a78> (a org.drools.core.common.ProjectClassLoader$DefaultInternalTypesClassLoader)
> at org.drools.core.common.ProjectClassLoader$DefaultInternalTypesClassLoader.loadType(ProjectClassLoader.java:431)
> at org.drools.core.common.ProjectClassLoader.loadType(ProjectClassLoader.java:177)
> at org.drools.core.common.ProjectClassLoader.loadClass(ProjectClassLoader.java:149)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
> at java.lang.Class.forName0(Native Method)
> at java.lang.Class.forName(Class.java:348)
> at org.mvel2.util.ParseTools.forNameWithInner(ParseTools.java:2178)
> at org.mvel2.ParserConfiguration.checkForDynamicImport(ParserConfiguration.java:154)
> at org.mvel2.ParserConfiguration.hasImport(ParserConfiguration.java:175)
> at org.mvel2.ParserContext.hasImport(ParserContext.java:386)
> at org.mvel2.compiler.PropertyVerifier.getBeanProperty(PropertyVerifier.java:175)
> at org.mvel2.compiler.PropertyVerifier.analyze(PropertyVerifier.java:132)
> at org.mvel2.compiler.ExpressionCompiler.verify(ExpressionCompiler.java:392)
> at org.mvel2.compiler.ExpressionCompiler._compile(ExpressionCompiler.java:281)
> at org.mvel2.util.ParseTools.subCompileExpression(ParseTools.java:2064)
> at org.mvel2.ast.Negation.<init>(Negation.java:40)
> at org.mvel2.compiler.AbstractParser.nextToken(AbstractParser.java:1233)
> at org.mvel2.compiler.ExpressionCompiler._compile(ExpressionCompiler.java:126)
> at org.mvel2.compiler.ExpressionCompiler.compile(ExpressionCompiler.java:67)
> at org.mvel2.MVEL.analyze(MVEL.java:680)
> at org.mvel2.MVEL.analyze(MVEL.java:685)
> at org.drools.compiler.rule.builder.dialect.mvel.MVELExprAnalyzer.analyzeExpression(MVELExprAnalyzer.java:130)
> at org.drools.compiler.rule.builder.dialect.mvel.MVELDialect.analyzeExpression(MVELDialect.java:509)
> at org.drools.compiler.rule.builder.dialect.mvel.MVELDialect.analyzeExpression(MVELDialect.java:491)
> at org.drools.compiler.rule.builder.PatternBuilder.buildAnalysis(PatternBuilder.java:1602)
> at org.drools.compiler.rule.builder.PatternBuilder.buildEval(PatternBuilder.java:1497)
> at org.drools.compiler.rule.builder.PatternBuilder.createAndBuildPredicate(PatternBuilder.java:1339)
> at org.drools.compiler.rule.builder.PatternBuilder.buildExpression(PatternBuilder.java:974)
> at org.drools.compiler.rule.builder.PatternBuilder.buildCcdDescr(PatternBuilder.java:946)
> at org.drools.compiler.rule.builder.PatternBuilder.build(PatternBuilder.java:767)
> at org.drools.compiler.rule.builder.PatternBuilder.processConstraintsAndBinds(PatternBuilder.java:627)
> at org.drools.compiler.rule.builder.PatternBuilder.build(PatternBuilder.java:184)
> at org.drools.compiler.rule.builder.PatternBuilder.build(PatternBuilder.java:151)
> at org.drools.compiler.rule.builder.PatternBuilder.build(PatternBuilder.java:133)
> at org.drools.compiler.rule.builder.GroupElementBuilder.build(GroupElementBuilder.java:66)
> at org.drools.compiler.rule.builder.RuleBuilder.build(RuleBuilder.java:105)
> at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.addRule(KnowledgeBuilderImpl.java:1281)
> at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.lambda$compileRulesLevel$3(KnowledgeBuilderImpl.java:1242)
> at org.drools.compiler.builder.impl.KnowledgeBuilderImpl$$Lambda$1035/1743914198.accept(Unknown Source)
> at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
> at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
> at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
> at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
> at java.util.stream.ForEachOps$ForEachTask.compute(ForEachOps.java:291)
> at java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:731)
> at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
> at java.util.concurrent.ForkJoinTask.doInvoke(ForkJoinTask.java:401)
> at java.util.concurrent.ForkJoinTask.invoke(ForkJoinTask.java:734)
> at java.util.stream.ForEachOps$ForEachOp.evaluateParallel(ForEachOps.java:160)
> at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateParallel(ForEachOps.java:174)
> at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:233)
> at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418)
> at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.compileRulesLevel(KnowledgeBuilderImpl.java:1238)
> at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.compileRules(KnowledgeBuilderImpl.java:1218)
> at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.compileKnowledgePackages(KnowledgeBuilderImpl.java:1056)
> at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.buildRules(KnowledgeBuilderImpl.java:2630)
> at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.buildPackages(KnowledgeBuilderImpl.java:2565)
> at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.buildPackages(CompositeKnowledgeBuilderImpl.java:109)
> at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:99)
> at org.drools.compiler.kie.builder.impl.AbstractKieProject.buildKnowledgePackages(AbstractKieProject.java:238)
> at org.drools.compiler.kie.builder.impl.AbstractKieProject.verify(AbstractKieProject.java:65)
> at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildKieProject(KieBuilderImpl.java:356)
> at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildKieModule(KieBuilderImpl.java:348)
> at org.kie.scanner.KieRepositoryScannerImpl.build(KieRepositoryScannerImpl.java:248)
> at org.kie.scanner.KieRepositoryScannerImpl.buildArtifact(KieRepositoryScannerImpl.java:198)
> at org.kie.scanner.KieRepositoryScannerImpl.loadArtifact(KieRepositoryScannerImpl.java:154)
> at org.kie.scanner.KieRepositoryScannerImpl.loadArtifact(KieRepositoryScannerImpl.java:149)
> - locked <0x00000006e6e94d50> (a org.kie.scanner.KieRepositoryScannerImpl)
> at org.drools.compiler.kie.builder.impl.KieRepositoryImpl.loadKieModuleFromMavenRepo(KieRepositoryImpl.java:192)
> at org.drools.compiler.kie.builder.impl.KieRepositoryImpl.getKieModule(KieRepositoryImpl.java:138)
> at org.drools.compiler.kie.builder.impl.KieRepositoryImpl.getKieModule(KieRepositoryImpl.java:115)
> at org.drools.compiler.kie.builder.impl.KieServicesImpl.newKieContainer(KieServicesImpl.java:184)
> at org.drools.compiler.kie.builder.impl.KieServicesImpl.newKieContainer(KieServicesImpl.java:176)
> at org.kie.server.services.impl.KieServerImpl.createContainer(KieServerImpl.java:269)
> - locked <0x00000006e6d9c1a0> (a org.kie.server.services.impl.KieContainerInstanceImpl)
> at org.kie.server.services.impl.ContainerManager.installContainersSync(ContainerManager.java:43)
> at org.kie.server.services.impl.ContainerManager.installContainers(ContainerManager.java:33)
> at org.kie.server.jms.ContainerManagerEJB.installContainers(ContainerManagerEJB.java:38)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at org.jboss.as.ee.component.ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptor.java:52)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:509)
> at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.doMethodInterception(Jsr299BindingsInterceptor.java:90)
> at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.processInvocation(Jsr299BindingsInterceptor.java:101)
> at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:63)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ejb3.component.invocationmetrics.ExecutionTimeInterceptor.processInvocation(ExecutionTimeInterceptor.java:43)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ejb3.tx.EjbBMTInterceptor.handleInvocation(EjbBMTInterceptor.java:103)
> at org.jboss.as.ejb3.tx.BMTInterceptor.processInvocation(BMTInterceptor.java:58)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ee.concurrent.ConcurrentContextInterceptor.processInvocation(ConcurrentContextInterceptor.java:45)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.invocation.InitialInterceptor.processInvocation(InitialInterceptor.java:40)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:53)
> at org.jboss.as.ee.component.interceptors.ComponentDispatcherInterceptor.processInvocation(ComponentDispatcherInterceptor.java:52)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ejb3.component.singleton.SingletonComponentInstanceAssociationInterceptor.processInvocation(SingletonComponentInstanceAssociationInterceptor.java:53)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:509)
> at org.jboss.weld.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:73)
> at org.jboss.as.weld.ejb.EjbRequestScopeActivationInterceptor.processInvocation(EjbRequestScopeActivationInterceptor.java:89)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ejb3.component.interceptors.CurrentInvocationContextInterceptor.processInvocation(CurrentInvocationContextInterceptor.java:41)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ejb3.component.invocationmetrics.WaitTimeInterceptor.processInvocation(WaitTimeInterceptor.java:47)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ejb3.security.SecurityContextInterceptor.processInvocation(SecurityContextInterceptor.java:100)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ejb3.deployment.processors.StartupAwaitInterceptor.processInvocation(StartupAwaitInterceptor.java:22)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:509)
> at org.jboss.as.ejb3.concurrency.ContainerManagedConcurrencyInterceptor.processInvocation(ContainerManagedConcurrencyInterceptor.java:110)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ejb3.component.interceptors.ShutDownInterceptorFactory$1.processInvocation(ShutDownInterceptorFactory.java:64)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ejb3.component.interceptors.LoggingInterceptor.processInvocation(LoggingInterceptor.java:67)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ee.component.NamespaceContextInterceptor.processInvocation(NamespaceContextInterceptor.java:50)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ejb3.component.interceptors.AdditionalSetupInterceptor.processInvocation(AdditionalSetupInterceptor.java:54)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.invocation.ContextClassLoaderInterceptor.processInvocation(ContextClassLoaderInterceptor.java:60)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.invocation.InterceptorContext.run(InterceptorContext.java:438)
> at org.wildfly.security.manager.WildFlySecurityManager.doChecked(WildFlySecurityManager.java:609)
> at org.jboss.invocation.AccessCheckingInterceptor.processInvocation(AccessCheckingInterceptor.java:57)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:53)
> at org.jboss.as.ee.component.ViewService$View.invoke(ViewService.java:198)
> at org.jboss.as.ee.component.ViewDescription$1.processInvocation(ViewDescription.java:185)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ejb3.component.interceptors.LogDiagnosticContextRecoveryInterceptor.processInvocation(LogDiagnosticContextRecoveryInterceptor.java:82)
> at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
> at org.jboss.as.ejb3.component.interceptors.AsyncFutureInterceptorFactory$2$2.runInvocation(AsyncFutureInterceptorFactory.java:152)
> at org.jboss.as.ejb3.component.interceptors.AsyncInvocationTask.run(AsyncInvocationTask.java:81)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
> at java.lang.Thread.run(Thread.java:748)
> at org.jboss.threads.JBossThread.run(JBossThread.java:320)
> Found 1 deadlock.
> {code}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 11 months
[JBoss JIRA] (WFLY-10411) TLDs under META-INF/resources inside the web-fragment jar is not loaded
by Tomas Hofman (JIRA)
[ https://issues.jboss.org/browse/WFLY-10411?page=com.atlassian.jira.plugin... ]
Tomas Hofman commented on WFLY-10411:
-------------------------------------
Interestingly Tomcat appears to require TLD files to be under "META-INF/resources". It doesn't find them if I copy them outside of resources dir.
> TLDs under META-INF/resources inside the web-fragment jar is not loaded
> -----------------------------------------------------------------------
>
> Key: WFLY-10411
> URL: https://issues.jboss.org/browse/WFLY-10411
> Project: WildFly
> Issue Type: Bug
> Components: Web (Undertow)
> Affects Versions: 13.0.0.Beta1
> Reporter: Masafumi Miura
> Assignee: Stuart Douglas
> Attachments: jsp-taglib-jar-in-war.zip
>
>
> TLDs under META-INF/resources inside the web-fragment jar is not loaded.
> {code:title=directory structure of the web-fragment jar}
> taglib-jar
> |-- META-INF
> | |-- resources
> | | `-- WEB-INF
> | | `-- tlds
> | | `-- hi.tld
> | `-- web-fragment.xml
> `-- simple
> `-- HiTag.class
> {code}
> {code:title=web-fragment.xml}
> <?xml version="1.0" encoding="UTF-8"?>
> <web-fragment id="WebFragment_ID"
> version="3.0"
> xmlns="http://java.sun.com/xml/ns/javaee"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-fragment_3_0.xsd">
> ...(snip)...
> <jsp-config>
> <taglib>
> <taglib-uri>/HiTag</taglib-uri>
> <taglib-location>/WEB-INF/tlds/hi.tld</taglib-location>
> </taglib>
> </jsp-config>
> </web-fragment>
> {code}
> The following ERROR is thrown at the deployment:
> {code}
> ERROR [org.wildfly.extension.undertow] (MSC service thread 1-8) WFLYUT0074: Could not find TLD /WEB-INF/tlds/hi.tld
> {code}
> JSP returns "500 Internal Server Error" and Jastow throws the following ERROR when accessing the JSP which has {{<%@ taglib uri="/HiTag" prefix="say"%>}} or {{<%@ taglib uri="/WEB-INF/tlds/hi.tld" prefix="say"%>}}:
> {code}
> ERROR [io.undertow.request] (default task-1) UT005023: Exception handling request to /taglib-jar-in-war/hi.jsp: org.apache.jasper.JasperException: JBWEB004036: File "/HiTag" not found
> at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:57)
> at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:278)
> at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:75)
> at org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:171)
> at org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:412)
> at org.apache.jasper.compiler.Parser.parseDirective(Parser.java:475)
> at org.apache.jasper.compiler.Parser.parseElements(Parser.java:1459)
> at org.apache.jasper.compiler.Parser.parse(Parser.java:143)
> at org.apache.jasper.compiler.ParserController.doParse(ParserController.java:223)
> at org.apache.jasper.compiler.ParserController.parse(ParserController.java:102)
> at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:200)
> at org.apache.jasper.compiler.Compiler.compile(Compiler.java:354)
> 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)
> ...(snip)...
> {code}
> {code}
> ERROR [io.undertow.request] (default task-1) UT005023: Exception handling request to /taglib-jar-in-war/index.jsp: org.apache.jasper.JasperException: JBWEB004036: File "/WEB-INF/tlds/hi.tld" not found
> at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:57)
> at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:278)
> at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:75)
> at org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:171)
> at org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:412)
> at org.apache.jasper.compiler.Parser.parseDirective(Parser.java:475)
> at org.apache.jasper.compiler.Parser.parseElements(Parser.java:1459)
> at org.apache.jasper.compiler.Parser.parse(Parser.java:143)
> at org.apache.jasper.compiler.ParserController.doParse(ParserController.java:223)
> at org.apache.jasper.compiler.ParserController.parse(ParserController.java:102)
> at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:200)
> at org.apache.jasper.compiler.Compiler.compile(Compiler.java:354)
> 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)
> ...(snip)...
> {code}
> Note that the same war file can be deployed and the JSPs works on Tomcat 8.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 11 months
[JBoss JIRA] (WFLY-10480) ElytronSecurityDomainContextImpl does not propagate authenticated subject
by Alessio Soldano (JIRA)
[ https://issues.jboss.org/browse/WFLY-10480?page=com.atlassian.jira.plugin... ]
Alessio Soldano updated WFLY-10480:
-----------------------------------
Priority: Critical (was: Major)
> ElytronSecurityDomainContextImpl does not propagate authenticated subject
> -------------------------------------------------------------------------
>
> Key: WFLY-10480
> URL: https://issues.jboss.org/browse/WFLY-10480
> Project: WildFly
> Issue Type: Bug
> Components: Security, Web Services
> Reporter: Alessio Soldano
> Assignee: Jim Ma
> Priority: Critical
> Fix For: 14.0.0.CR1
>
>
> We have a usecase scenario which requires ElytronSecurityDomainContextImpl to propagate the authenticated subject from webservice subsystem to
> ejb subystem. With old security domain , we used to rely on the following integration code in the SecurityDomainContextImpl:
> @Override
> public void pushSubjectContext(final Subject subject, final Principal principal, final Object credential) {
> AccessController.doPrivileged(new PrivilegedAction<Void>() {
> public Void run() {
> SecurityContext securityContext = SecurityContextAssociation.getSecurityContext();
> if (securityContext == null) {
> securityContext = createSecurityContext(getSecurityDomain());
> setSecurityContextOnAssociation(securityContext);
> }
> securityContext.getUtil().createSubjectInfo(principal, credential, subject);
> return null;
> }
> });
> }
> When an Elytron security domain is configured for the ws application, the functionality is not working as the corresponding method in ElytronSecurityDomainContextImpl is empty.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 11 months
[JBoss JIRA] (WFLY-10411) TLDs under META-INF/resources inside the web-fragment jar is not loaded
by Tomas Hofman (JIRA)
[ https://issues.jboss.org/browse/WFLY-10411?page=com.atlassian.jira.plugin... ]
Tomas Hofman commented on WFLY-10411:
-------------------------------------
I would say that Servlet 10.5 is more about serving files to clients and accessing files via {{ServletContext#getResource()}}.
> TLDs under META-INF/resources inside the web-fragment jar is not loaded
> -----------------------------------------------------------------------
>
> Key: WFLY-10411
> URL: https://issues.jboss.org/browse/WFLY-10411
> Project: WildFly
> Issue Type: Bug
> Components: Web (Undertow)
> Affects Versions: 13.0.0.Beta1
> Reporter: Masafumi Miura
> Assignee: Stuart Douglas
> Attachments: jsp-taglib-jar-in-war.zip
>
>
> TLDs under META-INF/resources inside the web-fragment jar is not loaded.
> {code:title=directory structure of the web-fragment jar}
> taglib-jar
> |-- META-INF
> | |-- resources
> | | `-- WEB-INF
> | | `-- tlds
> | | `-- hi.tld
> | `-- web-fragment.xml
> `-- simple
> `-- HiTag.class
> {code}
> {code:title=web-fragment.xml}
> <?xml version="1.0" encoding="UTF-8"?>
> <web-fragment id="WebFragment_ID"
> version="3.0"
> xmlns="http://java.sun.com/xml/ns/javaee"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-fragment_3_0.xsd">
> ...(snip)...
> <jsp-config>
> <taglib>
> <taglib-uri>/HiTag</taglib-uri>
> <taglib-location>/WEB-INF/tlds/hi.tld</taglib-location>
> </taglib>
> </jsp-config>
> </web-fragment>
> {code}
> The following ERROR is thrown at the deployment:
> {code}
> ERROR [org.wildfly.extension.undertow] (MSC service thread 1-8) WFLYUT0074: Could not find TLD /WEB-INF/tlds/hi.tld
> {code}
> JSP returns "500 Internal Server Error" and Jastow throws the following ERROR when accessing the JSP which has {{<%@ taglib uri="/HiTag" prefix="say"%>}} or {{<%@ taglib uri="/WEB-INF/tlds/hi.tld" prefix="say"%>}}:
> {code}
> ERROR [io.undertow.request] (default task-1) UT005023: Exception handling request to /taglib-jar-in-war/hi.jsp: org.apache.jasper.JasperException: JBWEB004036: File "/HiTag" not found
> at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:57)
> at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:278)
> at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:75)
> at org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:171)
> at org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:412)
> at org.apache.jasper.compiler.Parser.parseDirective(Parser.java:475)
> at org.apache.jasper.compiler.Parser.parseElements(Parser.java:1459)
> at org.apache.jasper.compiler.Parser.parse(Parser.java:143)
> at org.apache.jasper.compiler.ParserController.doParse(ParserController.java:223)
> at org.apache.jasper.compiler.ParserController.parse(ParserController.java:102)
> at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:200)
> at org.apache.jasper.compiler.Compiler.compile(Compiler.java:354)
> 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)
> ...(snip)...
> {code}
> {code}
> ERROR [io.undertow.request] (default task-1) UT005023: Exception handling request to /taglib-jar-in-war/index.jsp: org.apache.jasper.JasperException: JBWEB004036: File "/WEB-INF/tlds/hi.tld" not found
> at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:57)
> at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:278)
> at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:75)
> at org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:171)
> at org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:412)
> at org.apache.jasper.compiler.Parser.parseDirective(Parser.java:475)
> at org.apache.jasper.compiler.Parser.parseElements(Parser.java:1459)
> at org.apache.jasper.compiler.Parser.parse(Parser.java:143)
> at org.apache.jasper.compiler.ParserController.doParse(ParserController.java:223)
> at org.apache.jasper.compiler.ParserController.parse(ParserController.java:102)
> at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:200)
> at org.apache.jasper.compiler.Compiler.compile(Compiler.java:354)
> 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)
> ...(snip)...
> {code}
> Note that the same war file can be deployed and the JSPs works on Tomcat 8.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 11 months
[JBoss JIRA] (WFLY-10480) ElytronSecurityDomainContextImpl does not propagate authenticated subject
by Darran Lofthouse (JIRA)
[ https://issues.jboss.org/browse/WFLY-10480?page=com.atlassian.jira.plugin... ]
Darran Lofthouse updated WFLY-10480:
------------------------------------
Component/s: Security
Web Services
> ElytronSecurityDomainContextImpl does not propagate authenticated subject
> -------------------------------------------------------------------------
>
> Key: WFLY-10480
> URL: https://issues.jboss.org/browse/WFLY-10480
> Project: WildFly
> Issue Type: Bug
> Components: Security, Web Services
> Reporter: Alessio Soldano
> Assignee: Jim Ma
> Fix For: 14.0.0.CR1
>
>
> We have a usecase scenario which requires ElytronSecurityDomainContextImpl to propagate the authenticated subject from webservice subsystem to
> ejb subystem. With old security domain , we used to rely on the following integration code in the SecurityDomainContextImpl:
> @Override
> public void pushSubjectContext(final Subject subject, final Principal principal, final Object credential) {
> AccessController.doPrivileged(new PrivilegedAction<Void>() {
> public Void run() {
> SecurityContext securityContext = SecurityContextAssociation.getSecurityContext();
> if (securityContext == null) {
> securityContext = createSecurityContext(getSecurityDomain());
> setSecurityContextOnAssociation(securityContext);
> }
> securityContext.getUtil().createSubjectInfo(principal, credential, subject);
> return null;
> }
> });
> }
> When an Elytron security domain is configured for the ws application, the functionality is not working as the corresponding method in ElytronSecurityDomainContextImpl is empty.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 11 months
[JBoss JIRA] (WFLY-10411) TLDs under META-INF/resources inside the web-fragment jar is not loaded
by Masafumi Miura (JIRA)
[ https://issues.jboss.org/browse/WFLY-10411?page=com.atlassian.jira.plugin... ]
Masafumi Miura commented on WFLY-10411:
---------------------------------------
Hmm, from the servlet spec ("10.5 Directory Structure", etc), I thought resources under "META-INF/resources" directory of the JAR in the WEB-INF/lib directory were treated as files/directories which were located under the root of the directory structure of the application.
I read the servlet spec again... I've just noticed that the spec only mentions "static resources" or "JSPs" in that section. So, does that means that such "META-INF/resources" handling does not apply to TLD resources?
> TLDs under META-INF/resources inside the web-fragment jar is not loaded
> -----------------------------------------------------------------------
>
> Key: WFLY-10411
> URL: https://issues.jboss.org/browse/WFLY-10411
> Project: WildFly
> Issue Type: Bug
> Components: Web (Undertow)
> Affects Versions: 13.0.0.Beta1
> Reporter: Masafumi Miura
> Assignee: Stuart Douglas
> Attachments: jsp-taglib-jar-in-war.zip
>
>
> TLDs under META-INF/resources inside the web-fragment jar is not loaded.
> {code:title=directory structure of the web-fragment jar}
> taglib-jar
> |-- META-INF
> | |-- resources
> | | `-- WEB-INF
> | | `-- tlds
> | | `-- hi.tld
> | `-- web-fragment.xml
> `-- simple
> `-- HiTag.class
> {code}
> {code:title=web-fragment.xml}
> <?xml version="1.0" encoding="UTF-8"?>
> <web-fragment id="WebFragment_ID"
> version="3.0"
> xmlns="http://java.sun.com/xml/ns/javaee"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-fragment_3_0.xsd">
> ...(snip)...
> <jsp-config>
> <taglib>
> <taglib-uri>/HiTag</taglib-uri>
> <taglib-location>/WEB-INF/tlds/hi.tld</taglib-location>
> </taglib>
> </jsp-config>
> </web-fragment>
> {code}
> The following ERROR is thrown at the deployment:
> {code}
> ERROR [org.wildfly.extension.undertow] (MSC service thread 1-8) WFLYUT0074: Could not find TLD /WEB-INF/tlds/hi.tld
> {code}
> JSP returns "500 Internal Server Error" and Jastow throws the following ERROR when accessing the JSP which has {{<%@ taglib uri="/HiTag" prefix="say"%>}} or {{<%@ taglib uri="/WEB-INF/tlds/hi.tld" prefix="say"%>}}:
> {code}
> ERROR [io.undertow.request] (default task-1) UT005023: Exception handling request to /taglib-jar-in-war/hi.jsp: org.apache.jasper.JasperException: JBWEB004036: File "/HiTag" not found
> at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:57)
> at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:278)
> at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:75)
> at org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:171)
> at org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:412)
> at org.apache.jasper.compiler.Parser.parseDirective(Parser.java:475)
> at org.apache.jasper.compiler.Parser.parseElements(Parser.java:1459)
> at org.apache.jasper.compiler.Parser.parse(Parser.java:143)
> at org.apache.jasper.compiler.ParserController.doParse(ParserController.java:223)
> at org.apache.jasper.compiler.ParserController.parse(ParserController.java:102)
> at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:200)
> at org.apache.jasper.compiler.Compiler.compile(Compiler.java:354)
> 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)
> ...(snip)...
> {code}
> {code}
> ERROR [io.undertow.request] (default task-1) UT005023: Exception handling request to /taglib-jar-in-war/index.jsp: org.apache.jasper.JasperException: JBWEB004036: File "/WEB-INF/tlds/hi.tld" not found
> at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:57)
> at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:278)
> at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:75)
> at org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:171)
> at org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:412)
> at org.apache.jasper.compiler.Parser.parseDirective(Parser.java:475)
> at org.apache.jasper.compiler.Parser.parseElements(Parser.java:1459)
> at org.apache.jasper.compiler.Parser.parse(Parser.java:143)
> at org.apache.jasper.compiler.ParserController.doParse(ParserController.java:223)
> at org.apache.jasper.compiler.ParserController.parse(ParserController.java:102)
> at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:200)
> at org.apache.jasper.compiler.Compiler.compile(Compiler.java:354)
> 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)
> ...(snip)...
> {code}
> Note that the same war file can be deployed and the JSPs works on Tomcat 8.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 11 months