[JBoss JIRA] (WFLY-12655) Exception with web.xml url-pattern
by Frank Heldt (Jira)
Frank Heldt created WFLY-12655:
----------------------------------
Summary: Exception with web.xml url-pattern
Key: WFLY-12655
URL: https://issues.jboss.org/browse/WFLY-12655
Project: WildFly
Issue Type: Bug
Components: Web (Undertow)
Affects Versions: 18.0.0.Final
Reporter: Frank Heldt
Assignee: Flavia Rainone
Defining and securing 2 folders in a war with similar names given this Exception on deployment:
12:38:37,994 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-3) MSC000001: Failed to start service jboss.deployment.unit."java-web-project.war".jboss.security.jacc: org.jboss.msc.service.StartException in service jboss.deployment.unit."java-web-project.war".jboss.security.jacc: WFLYSEC0012: Unable to start the JaccService service
at org.jboss.as.security@18.0.0.Final//org.jboss.as.security.service.JaccService.start(JaccService.java:107)
at org.jboss.msc@1.4.11.Final//org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1739)
at org.jboss.msc@1.4.11.Final//org.jboss.msc.service.ServiceControllerImpl$StartTask.execute(ServiceControllerImpl.java:1701)
at org.jboss.msc@1.4.11.Final//org.jboss.msc.service.ServiceControllerImpl$ControllerTask.run(ServiceControllerImpl.java:1559)
at org.jboss.threads@2.3.3.Final//org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
at org.jboss.threads@2.3.3.Final//org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1982)
at org.jboss.threads@2.3.3.Final//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486)
at org.jboss.threads@2.3.3.Final//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1377)
at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: java.lang.IllegalArgumentException: Invalid prefix pattern in URLPatternList
at javax.security.jacc.api@2.0.0.Final//javax.security.jacc.URLPatternSpec.setURLPatternArray(URLPatternSpec.java:308)
at javax.security.jacc.api(a)2.0.0.Final//javax.security.jacc.URLPatternSpec.<init>(URLPatternSpec.java:79)
at javax.security.jacc.api(a)2.0.0.Final//javax.security.jacc.WebResourcePermission.<init>(WebResourcePermission.java:160)
at org.wildfly.extension.undertow@18.0.0.Final//org.wildfly.extension.undertow.security.jacc.WarJACCService.createPermissions(WarJACCService.java:303)
at org.wildfly.extension.undertow@18.0.0.Final//org.wildfly.extension.undertow.security.jacc.WarJACCService.createPermissions(WarJACCService.java:64)
at org.jboss.as.security@18.0.0.Final//org.jboss.as.security.service.JaccService.start(JaccService.java:86)
... 8 more
This is the corresponding part of the web.xml:
<security-constraint>
<web-resource-collection>
<web-resource-name>Area</web-resource-name>
<url-pattern>/area/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>role1</role-name>
<role-name>role2</role-name>
</auth-constraint>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
<security-constraint>
<web-resource-collection>
<web-resource-name>Area 51</web-resource-name>
<url-pattern>/area51/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>role1</role-name>
</auth-constraint>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
Looks like this only happens when the url-pattern starts with the same characters (eg /area/* and /area51/*).
The same war under WildFly 17.0.1 works as expected.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 9 months
[JBoss JIRA] (WFLY-12651) ModuleClassLoaderLocator$CombinedClassLoader created for every request when using default module
by Lin Gao (Jira)
[ https://issues.jboss.org/browse/WFLY-12651?page=com.atlassian.jira.plugin... ]
Lin Gao reassigned WFLY-12651:
------------------------------
Assignee: Lin Gao
> ModuleClassLoaderLocator$CombinedClassLoader created for every request when using default module
> ------------------------------------------------------------------------------------------------
>
> Key: WFLY-12651
> URL: https://issues.jboss.org/browse/WFLY-12651
> Project: WildFly
> Issue Type: Bug
> Components: Security
> Affects Versions: 18.0.0.Final
> Reporter: Matt Robson
> Assignee: Lin Gao
> Priority: Critical
> Fix For: 19.0.0.Beta1
>
>
> During testing, we collected jmap -clstats to see what existed.
> What we saw was:
> total = 311741
> alive=1, dead=311740
> Of those 311750, 310687 of them are unique ModuleClassLoaderLocator$CombinedClassLoader with the same parent 0x0000000730aa98b8
> 0x000000074db04db0 0 0 0x0000000730aa98b8 dead org/jboss/as/security/plugins/ModuleClassLoaderLocator$CombinedClassLoader@0x00000007f0f58650
> Because they're dead, this is not a leak - but it shows what a new CL is created for every single request which is a huge performance hit.
> The new classloading behaviour is introduced into 7.1 by https://issues.jboss.org/browse/SECURITY-930 / https://issues.jboss.org/browse/JBEAP-6559
> From https://github.com/jbossas/jboss-eap7/pull/925/files#diff-a8665415b9dad30...
> } else
> { mappingInfo.addJBossModuleName(DEFAULT_MODULE); }
> }
> The call(s) to ClassLoaderLocatorFactory.get() check for !jbossModuleNames.isEmpty() but because we now explicitly set the default module, it's never not empty so it gets called on every request.
> ClassLoader moduleCL = null;
> List<String> jbossModuleNames = jai.getJBossModuleNames();
> if (!jbossModuleNames.isEmpty())
> { ClassLoaderLocator locator = ClassLoaderLocatorFactory.get(); if (locator != null) moduleCL = locator.get(jbossModuleNames); }
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 9 months
[JBoss JIRA] (DROOLS-4620) Executable model compilation fails with 'inference variable A has incompatible bounds' when using accumulate
by Martin Weiler (Jira)
[ https://issues.jboss.org/browse/DROOLS-4620?page=com.atlassian.jira.plugi... ]
Martin Weiler updated DROOLS-4620:
----------------------------------
Git Pull Request: https://github.com/kiegroup/drools/pull/2570
> Executable model compilation fails with 'inference variable A has incompatible bounds' when using accumulate
> ------------------------------------------------------------------------------------------------------------
>
> Key: DROOLS-4620
> URL: https://issues.jboss.org/browse/DROOLS-4620
> Project: Drools
> Issue Type: Bug
> Components: core engine, executable model
> Affects Versions: 7.27.0.Final
> Reporter: Martin Weiler
> Assignee: Mario Fusco
> Priority: Major
> Labels: support
>
> A rule containing the following accumulate constraint:
> {noformat}
> when
> $max1 : Number() from accumulate(
> StockTick($time : dueDate);
> max($time.getTime().getTime()))
> // object model:
> public class StockTick {
> ...
> public Calendar getDueDate() {
> return dueDate;
> }
> {noformat}
> fails to compile:
> {noformat}
> reason: varargs mismatch; inference variable A has incompatible bounds
> equality constraints: java.lang.Long
> lower bounds: java.util.Date], Message [id=3, level=ERROR, path=src/main/java/defaultpkg/RulesE50E409E17279CAE524E8EC1D671D39BRuleMethods0.java, line=0, column=0
> {noformat}
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 9 months
[JBoss JIRA] (DROOLS-4621) Executable model compilation fails with 'inference variable A has incompatible bounds' when using accumulate
by Martin Weiler (Jira)
Martin Weiler created DROOLS-4621:
-------------------------------------
Summary: Executable model compilation fails with 'inference variable A has incompatible bounds' when using accumulate
Key: DROOLS-4621
URL: https://issues.jboss.org/browse/DROOLS-4621
Project: Drools
Issue Type: Bug
Components: core engine, executable model
Affects Versions: 7.27.0.Final
Reporter: Martin Weiler
Assignee: Mario Fusco
A rule containing the following accumulate constraint:
{noformat}
when
$max1 : Number() from accumulate(
StockTick($time : dueDate);
max($time.getTime().getTime()))
// object model:
public class StockTick {
...
public Calendar getDueDate() {
return dueDate;
}
{noformat}
fails to compile:
{noformat}
reason: varargs mismatch; inference variable A has incompatible bounds
equality constraints: java.lang.Long
lower bounds: java.util.Date], Message [id=3, level=ERROR, path=src/main/java/defaultpkg/RulesE50E409E17279CAE524E8EC1D671D39BRuleMethods0.java, line=0, column=0
{noformat}
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 9 months
[JBoss JIRA] (DROOLS-4620) Executable model compilation fails with 'inference variable A has incompatible bounds' when using accumulate
by Martin Weiler (Jira)
Martin Weiler created DROOLS-4620:
-------------------------------------
Summary: Executable model compilation fails with 'inference variable A has incompatible bounds' when using accumulate
Key: DROOLS-4620
URL: https://issues.jboss.org/browse/DROOLS-4620
Project: Drools
Issue Type: Bug
Components: core engine, executable model
Affects Versions: 7.27.0.Final
Reporter: Martin Weiler
Assignee: Mario Fusco
A rule containing the following accumulate constraint:
{noformat}
when
$max1 : Number() from accumulate(
StockTick($time : dueDate);
max($time.getTime().getTime()))
// object model:
public class StockTick {
...
public Calendar getDueDate() {
return dueDate;
}
{noformat}
fails to compile:
{noformat}
reason: varargs mismatch; inference variable A has incompatible bounds
equality constraints: java.lang.Long
lower bounds: java.util.Date], Message [id=3, level=ERROR, path=src/main/java/defaultpkg/RulesE50E409E17279CAE524E8EC1D671D39BRuleMethods0.java, line=0, column=0
{noformat}
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 9 months
[JBoss JIRA] (DROOLS-4619) Hard to figure out how to select what type of expression the DMN decision will be
by Elizabeth Clayton (Jira)
[ https://issues.jboss.org/browse/DROOLS-4619?page=com.atlassian.jira.plugi... ]
Elizabeth Clayton updated DROOLS-4619:
--------------------------------------
Labels: UX UXTeam drools-tools (was: )
> Hard to figure out how to select what type of expression the DMN decision will be
> ---------------------------------------------------------------------------------
>
> Key: DROOLS-4619
> URL: https://issues.jboss.org/browse/DROOLS-4619
> Project: Drools
> Issue Type: Enhancement
> Reporter: Alexandre Bakos
> Assignee: Elizabeth Clayton
> Priority: Major
> Labels: UX, UXTeam, drools-tools
> Attachments: Screen Shot 2019-10-08 at 4.42.38 PM.png
>
>
> I had a hard time to figure out that I had to click the cell to select what type of expression I'd like, that in my case was a decision table.
> I right-clicked, I double-clicked the "Decision-1" header and took me a while to just click the cell that says: Select expression.
> A very quick win for a very short time would change the message to something like: "click here to select expression"... but likely that a better interaction is needed to replace the current empty cell.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 9 months
[JBoss JIRA] (DROOLS-4619) Hard to figure out how to select what type of expression the DMN decision will be
by Elizabeth Clayton (Jira)
[ https://issues.jboss.org/browse/DROOLS-4619?page=com.atlassian.jira.plugi... ]
Elizabeth Clayton updated DROOLS-4619:
--------------------------------------
Story Points: 3
Sprint: 2019 Week 41-43 (from Okt 7)
> Hard to figure out how to select what type of expression the DMN decision will be
> ---------------------------------------------------------------------------------
>
> Key: DROOLS-4619
> URL: https://issues.jboss.org/browse/DROOLS-4619
> Project: Drools
> Issue Type: Enhancement
> Reporter: Alexandre Bakos
> Assignee: Elizabeth Clayton
> Priority: Major
> Labels: UX, UXTeam, drools-tools
> Attachments: Screen Shot 2019-10-08 at 4.42.38 PM.png
>
>
> I had a hard time to figure out that I had to click the cell to select what type of expression I'd like, that in my case was a decision table.
> I right-clicked, I double-clicked the "Decision-1" header and took me a while to just click the cell that says: Select expression.
> A very quick win for a very short time would change the message to something like: "click here to select expression"... but likely that a better interaction is needed to replace the current empty cell.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 9 months
[JBoss JIRA] (WFLY-12535) Container does not pass the beanManager when creating eclipselink EntityManagerFactory
by charles ghislain (Jira)
[ https://issues.jboss.org/browse/WFLY-12535?page=com.atlassian.jira.plugin... ]
charles ghislain commented on WFLY-12535:
-----------------------------------------
I confirm adding this property works around the issue.
If still helpful, here are the logs without that property, when no bean are injected in the validator.
> Container does not pass the beanManager when creating eclipselink EntityManagerFactory
> --------------------------------------------------------------------------------------
>
> Key: WFLY-12535
> URL: https://issues.jboss.org/browse/WFLY-12535
> Project: WildFly
> Issue Type: Bug
> Components: JPA / Hibernate
> Affects Versions: 16.0.0.Final
> Reporter: charles ghislain
> Assignee: Scott Marlow
> Priority: Major
> Attachments: server.log, server.log
>
>
> When creating the entity manager factory for eclipseliknk using `javax.persistence.spi.PersistenceProvider#createContainerEntityManagerFactory`, wildfly does not pass the properties required by the jee8 spec, as specified in the javadoc of this method:
> {code}
> If a Bean Validation provider is present in the classpath, the container must pass the ValidatorFactory instance in the map with the key "javax.persistence.validation.factory". If the containing archive is a bean archive, the container must pass the BeanManager instance in the map with the key "javax.persistence.bean.manager"
> {code}
> Debugging the eclipselink implementation of this method, `org.eclipse.persistence.jpa.PersistenceProvider#createContainerEntityManagerFactory`, the properties set by the container contains the following 3 entries:
> {code:java}
> eclipselink.logging.logger -> org.jipijapa.eclipselink.JBossLogger
> eclipselink.archive.factory -> org.jipijapa.eclipselink.JBossArchiveFactoryImpl
> eclipselink.target-server -> org.jipijapa.eclipselink.WildFlyServerPlatform
> {code}
> I think this prevents CDI injection in custom ConstraintValidators, as mentionned on an old eclipselink thread: https://www.eclipse.org/lists/eclipselink-users/msg08503.html.
> I have a `ConstraintValidator` with an `@Inject`ed EJB, but when validation is triggered on the call to `javax.persistence.EntityManager#merge`, the injected field is null.
> The wildfly installation has been updated to include eclipselink as per documentation:
> the org.eclipse.persistence module has been updated to include the eclipselink jar with the following descriptor:
> {code:java}
> <module xmlns="urn:jboss:module:1.1" name="org.eclipse.persistence">
> <resources>
> <!-- jipijapa line is kept from the original module -->
> <resource-root path="eclipselink.jar">
> <filter>
> <exclude path="javax/**" />
> </filter>
> </resource-root>
> </resources>
> <dependencies>
> <module name="asm.asm"/>
> <module name="javax.api"/>
> <module name="javax.annotation.api"/>
> <module name="javax.enterprise.api"/>
> <module name="javax.persistence.api"/>
> <module name="javax.transaction.api"/>
> <module name="javax.validation.api"/>
> <module name="javax.xml.bind.api"/>
> <module name="javax.ws.rs.api"/>
> <module name="org.antlr"/>
> <module name="org.apache.commons.collections"/>
> <module name="org.dom4j"/>
> <module name="org.jboss.as.jpa.spi"/>
> <module name="org.jboss.logging"/>
> <module name="org.jboss.vfs"/>
> </dependencies>
> </module>
> {code}
> The persistence unit provider has been set to `org.eclipse.persistence.jpa.PersistenceProvider` in the persistence.xml file.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 9 months