[JBoss JIRA] (JBJCA-1332) not possible to set all-upper-case ActivationConfigProperty
by Martin Simka (JIRA)
Martin Simka created JBJCA-1332:
-----------------------------------
Summary: not possible to set all-upper-case ActivationConfigProperty
Key: JBJCA-1332
URL: https://issues.jboss.org/browse/JBJCA-1332
Project: IronJacamar
Issue Type: Bug
Components: Core
Affects Versions: WildFly/IronJacamar 1.3.4.Final
Reporter: Martin Simka
{code:java|title=MDB}
@MessageDriven(name = "LocalResendingMdbFromQueueToQueue",
activationConfig = {
@ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue"),
@ActivationConfigProperty(propertyName = "destination", propertyValue = "jms/queue/InQueue"),
@ActivationConfigProperty(propertyName = "HA", propertyValue = "false")
})
@TransactionManagement(value = TransactionManagementType.CONTAINER)
@TransactionAttribute(value = TransactionAttributeType.REQUIRED)
public class LocalResendingMdbFromQueueToQueue implements MessageListener {
{code}
{{HA}} property is ignored because IJ can't find setter
{noformat}
14:39:18,434 WARN [org.jboss.as.ejb3] (MSC service thread 1-7) WFLYEJB0006: ActivationConfigProperty HA will be ignored since it is not allowed by resource adapter: activemq-ra
{noformat}
ActivationSpec class is https://github.com/apache/activemq-artemis/blob/master/artemis-ra/src/mai...
Setter for property {{HA}} is in parent class https://github.com/apache/activemq-artemis/blob/master/artemis-ra/src/mai...
It happens because [SimpleResourceAdapterRepository.java#L501|https://github.com/ironjacamar/...] converts the first character after "set" to lower case. But that is not sufficient.
According to JCA 1.7 specification ActivationSpec is JavaBean (spec. section 5.3.3) and JavaBean specification (spec. section 8.8) says
{quote}
Thus when we extract a property or event name from the middle of an existing Java name, we normally convert the first character to lower case. However to support the occasional use of all upper-case names, we check if the first two characters of the name are both upper case and if so leave it alone.
So for example,
"FooBah" becomes "fooBah"
"Z" becomes "z"
"URL" becomes "URL"
We provide a method Introspector.decapitalize which implements this conversion rule.
{quote}
Maybe IJ could leverage [Introspector|https://docs.oracle.com/javase/7/docs/api/java/beans/Introsp...] class
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
9 years, 7 months
[JBoss JIRA] (WFCORE-1824) Can not parse object attributes that contains a Properties attribute
by Brian Stansberry (JIRA)
[ https://issues.jboss.org/browse/WFCORE-1824?page=com.atlassian.jira.plugi... ]
Brian Stansberry reassigned WFCORE-1824:
----------------------------------------
Assignee: Tomaz Cerar (was: Brian Stansberry)
Tomaz, can you have a look?
> Can not parse object attributes that contains a Properties attribute
> --------------------------------------------------------------------
>
> Key: WFCORE-1824
> URL: https://issues.jboss.org/browse/WFCORE-1824
> Project: WildFly Core
> Issue Type: Bug
> Components: Domain Management
> Affects Versions: 3.0.0.Alpha8
> Reporter: Jeff Mesnil
> Assignee: Tomaz Cerar
>
> My resource defines an attribute which is a LIST of OBJECT that corresponds to a class (class name + module) and Properties that are passed to the created instance:
> {noformat}
> private static final String CLASS = "class";
> private static final String MODULE = "module";
> public static final PropertiesAttributeDefinition PROPERTIES = new PropertiesAttributeDefinition.Builder("properties", true)
> .setAllowExpression(true)
> .build();
> public static final ObjectTypeAttributeDefinition PROCESS_STATE_LISTENER = ObjectTypeAttributeDefinition.Builder.of("process-state-listener",
> SimpleAttributeDefinitionBuilder.create(CLASS, ModelType.STRING, false)
> .setAllowExpression(false)
> .build(),
> SimpleAttributeDefinitionBuilder.create(MODULE, ModelType.STRING, false)
> .setAllowExpression(false)
> .build(),
> PROPERTIES)
> .setRestartAllServices()
> .setAllowNull(true)
> .build();
> public static final AttributeDefinition PROCESS_STATE_LISTENERS = ObjectListAttributeDefinition.Builder.of("listeners", PROCESS_STATE_LISTENER)
> .setAllowNull(false)
> .setRuntimeServiceNotRequired()
> .build();
> {noformat}
> I can create the resource from the CLI:
> {noformat}
> /subsystem=core-management/service=process-state-listeners:add(listeners=[{class=org.foo.Listener, module=org.foo,, properties = {foo = true, bar = ${bar.prop:2}}}])
> {"outcome" => "success"}
> {noformat}
> And the resource and its attribute is properly marshalled to the XML configuration:
> {noformat}
> <process-state-listeners>
> <listeners>
> <process-state-listener class="org.foo.Listener" module="org.foo">
> <properties>
> <property name="foo" value="true"/>
> <property name="bar" value="${bar.prop:2}"/>
> </properties>
> </process-state-listener>
> </listeners>
> </process-state-listeners>
> {noformat}
> However the resource can not be parsed and it fails with the exception:
> {noformat}
> boss.as.server.parsing.StandaloneXml_5.readElement(StandaloneXml_5.java:144)
> at org.jboss.as.server.parsing.StandaloneXml.readElement(StandaloneXml.java:107)
> at org.jboss.as.server.parsing.StandaloneXml.readElement(StandaloneXml.java:49)
> at org.jboss.staxmapper.XMLMapperImpl.processNested(XMLMapperImpl.java:110)
> at org.jboss.staxmapper.XMLMapperImpl.parseDocument(XMLMapperImpl.java:69)
> at org.jboss.as.controller.persistence.XmlConfigurationPersister.load(XmlConfigurationPersister.java:123)
> ... 3 more
> 09:45:00,537 FATAL [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0056: Server boot has failed in an unrecoverable manner; exiting. See previous messages for details.{noformat}
> The code in org.jboss.as.controller.AttributeParser#parseElement:197 to parse a list of objects assumes that the object's value are all represented by XML attributes. In my case, that's not correct as the "properties" attribute is represented by XML elements.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
9 years, 7 months
[JBoss JIRA] (WFLY-6941) Split Weld subsystem into several modules
by Scott Marlow (JIRA)
[ https://issues.jboss.org/browse/WFLY-6941?page=com.atlassian.jira.plugin.... ]
Scott Marlow commented on WFLY-6941:
------------------------------------
Are there specific concerns with performance based on changes to code? Or just general concern that splitting Weld to use different classloaders could introduce a performance regression?
> Split Weld subsystem into several modules
> -----------------------------------------
>
> Key: WFLY-6941
> URL: https://issues.jboss.org/browse/WFLY-6941
> Project: WildFly
> Issue Type: Feature Request
> Components: CDI / Weld
> Reporter: Martin Kouba
> Assignee: Martin Kouba
> Fix For: 11.0.0.Alpha1
>
>
> * split subsystem into core and optional modules (ejb, jpa, bean-validation, etc.)
> * define SPI
> * use {{ServiceLoader}} to load optional services
> This should allow Swarm to leave out optional dependencies.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
9 years, 7 months
[JBoss JIRA] (WFCORE-1826) Tab completion don't return inner attributes
by Jean-Francois Denise (JIRA)
[ https://issues.jboss.org/browse/WFCORE-1826?page=com.atlassian.jira.plugi... ]
Jean-Francois Denise updated WFCORE-1826:
-----------------------------------------
Description:
*Description of problem:*
Tab completion returns wrong values
*How reproducible:*
Always
*Steps to Reproduce:*
{noformat}
/extension=org.wildfly.extension.elytron:add
/subsystem=elytron:add
reload
/subsystem=elytron/simple-permission-mapper=login-permission-mapper2:add(permission-mappings=[{permissions=[{class-name="org.wildfly.security.auth.permission.LoginPermission"}],<TAB>
{noformat}
*Actual results:*
{noformat}
/subsystem=elytron/simple-permission-mapper=login-permission-mapper2:add(permission-mappings=[{permissions=[{class-name="org.wildfly.security.auth.permission.LoginPermission"}],{
{noformat}
*Expected results:*
{noformat}
[standalone@localhost:9990 /] /subsystem=elytron/simple-permission-mapper=login-permission-mapper2:add(permission-mappings=[{permissions=[{class-name="org.wildfly.security.auth.permission.LoginPermission"}],
principals roles
[standalone@localhost:9990 /] /subsystem=elytron/simple-permission-mapper=login-permission-mapper2:add(permission-mappings=[{permissions=[{class-name="org.wildfly.security.auth.permission.LoginPermission"}],
{noformat}
> Tab completion don't return inner attributes
> --------------------------------------------
>
> Key: WFCORE-1826
> URL: https://issues.jboss.org/browse/WFCORE-1826
> Project: WildFly Core
> Issue Type: Bug
> Components: CLI
> Reporter: Jean-Francois Denise
> Assignee: Jean-Francois Denise
>
> *Description of problem:*
> Tab completion returns wrong values
> *How reproducible:*
> Always
> *Steps to Reproduce:*
> {noformat}
> /extension=org.wildfly.extension.elytron:add
> /subsystem=elytron:add
> reload
> /subsystem=elytron/simple-permission-mapper=login-permission-mapper2:add(permission-mappings=[{permissions=[{class-name="org.wildfly.security.auth.permission.LoginPermission"}],<TAB>
> {noformat}
> *Actual results:*
> {noformat}
> /subsystem=elytron/simple-permission-mapper=login-permission-mapper2:add(permission-mappings=[{permissions=[{class-name="org.wildfly.security.auth.permission.LoginPermission"}],{
> {noformat}
> *Expected results:*
> {noformat}
> [standalone@localhost:9990 /] /subsystem=elytron/simple-permission-mapper=login-permission-mapper2:add(permission-mappings=[{permissions=[{class-name="org.wildfly.security.auth.permission.LoginPermission"}],
> principals roles
> [standalone@localhost:9990 /] /subsystem=elytron/simple-permission-mapper=login-permission-mapper2:add(permission-mappings=[{permissions=[{class-name="org.wildfly.security.auth.permission.LoginPermission"}],
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
9 years, 7 months
[JBoss JIRA] (WFCORE-1825) Tab completion throws IllegalArgumentException after two '{' characters and '=' character
by Jean-Francois Denise (JIRA)
[ https://issues.jboss.org/browse/WFCORE-1825?page=com.atlassian.jira.plugi... ]
Jean-Francois Denise updated WFCORE-1825:
-----------------------------------------
Description:
*Description of problem:*
This issue is similar like JBEAP-6043. Tab completion throws IllegalArgumentException after two '\{' characters and '=' character. Or tab completition returns unlimited count of ')' characters.
*How reproducible:*
Always
----
*1. Steps to Reproduce:*
{noformat}
Get fresh EAP.
./standalone.sh &
./jboss-cli.sh -c
/subsystem=elytron/simple-permission-mapper=login-permission-mapper2:add(permission-mappings=[{roles=[{role<TAB><TAB><TAB><TAB><TAB><TAB><TAB><TAB><TAB><TAB>
{noformat}
*1. Actual results:*
{noformat}
/subsystem=elytron/simple-permission-mapper=login-permission-mapper2:add(permission-mappings=[{roles=[{role))))))))))
{noformat}
----
*2. Steps to Reproduce:*
{noformat}
./standalone.sh -c standalone-elytron.xml &
./jboss-cli.sh -c
/subsystem=elytron/simple-permission-mapper=login-permission-mapper2:add(permission-mappings=[{roles=[{role=<TAB>
{noformat}
*2. Actual results:*
* java.lang.IllegalArgumentException
* Details:
{noformat}
[mkopecky@dhcp-10-40-5-171 bin]$ ./jboss-cli.sh -c
[standalone@localhost:9990 /] /subsystem=elytron/simple-permission-mapper=login-permission-mapper2:add(permission-mappings=[{roles=[{role=Exception in thread "Aesh Process Loop 30318020" java.lang.IllegalArgumentException
at org.jboss.dmr.ModelValue.getChild(ModelValue.java:115)
at org.jboss.dmr.ModelNode.get(ModelNode.java:861)
at org.jboss.as.cli.impl.ValueTypeCompleter$ValueTypeCallbackHandler.getCandidates(ValueTypeCompleter.java:475)
at org.jboss.as.cli.impl.ValueTypeCompleter.complete(ValueTypeCompleter.java:321)
at org.jboss.as.cli.operation.OperationRequestCompleter.complete(OperationRequestCompleter.java:254)
at org.jboss.as.cli.operation.OperationRequestCompleter.complete(OperationRequestCompleter.java:74)
at org.jboss.as.cli.CommandCompleter.doComplete(CommandCompleter.java:137)
at org.jboss.as.cli.CommandCompleter.complete(CommandCompleter.java:64)
at org.jboss.as.cli.impl.Console$Factory$1$1.complete(Console.java:143)
at org.jboss.aesh.console.AeshCompletionHandler.complete(AeshCompletionHandler.java:155)
at org.jboss.aesh.console.AeshInputProcessor.complete(AeshInputProcessor.java:427)
at org.jboss.aesh.console.AeshInputProcessor.parseOperation(AeshInputProcessor.java:165)
at org.jboss.aesh.console.Console.processInternalOperation(Console.java:773)
at org.jboss.aesh.console.Console.execute(Console.java:733)
at org.jboss.aesh.console.Console.access$900(Console.java:73)
at org.jboss.aesh.console.Console$6.run(Console.java:642)
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)
[mkopecky@dhcp-10-40-5-171 bin]$
{noformat}
> Tab completion throws IllegalArgumentException after two '{' characters and '=' character
> -----------------------------------------------------------------------------------------
>
> Key: WFCORE-1825
> URL: https://issues.jboss.org/browse/WFCORE-1825
> Project: WildFly Core
> Issue Type: Bug
> Components: CLI
> Reporter: Jean-Francois Denise
> Assignee: Jean-Francois Denise
>
> *Description of problem:*
> This issue is similar like JBEAP-6043. Tab completion throws IllegalArgumentException after two '\{' characters and '=' character. Or tab completition returns unlimited count of ')' characters.
> *How reproducible:*
> Always
> ----
> *1. Steps to Reproduce:*
> {noformat}
> Get fresh EAP.
> ./standalone.sh &
> ./jboss-cli.sh -c
> /subsystem=elytron/simple-permission-mapper=login-permission-mapper2:add(permission-mappings=[{roles=[{role<TAB><TAB><TAB><TAB><TAB><TAB><TAB><TAB><TAB><TAB>
> {noformat}
> *1. Actual results:*
> {noformat}
> /subsystem=elytron/simple-permission-mapper=login-permission-mapper2:add(permission-mappings=[{roles=[{role))))))))))
> {noformat}
> ----
> *2. Steps to Reproduce:*
> {noformat}
> ./standalone.sh -c standalone-elytron.xml &
> ./jboss-cli.sh -c
> /subsystem=elytron/simple-permission-mapper=login-permission-mapper2:add(permission-mappings=[{roles=[{role=<TAB>
> {noformat}
> *2. Actual results:*
> * java.lang.IllegalArgumentException
> * Details:
> {noformat}
> [mkopecky@dhcp-10-40-5-171 bin]$ ./jboss-cli.sh -c
> [standalone@localhost:9990 /] /subsystem=elytron/simple-permission-mapper=login-permission-mapper2:add(permission-mappings=[{roles=[{role=Exception in thread "Aesh Process Loop 30318020" java.lang.IllegalArgumentException
> at org.jboss.dmr.ModelValue.getChild(ModelValue.java:115)
> at org.jboss.dmr.ModelNode.get(ModelNode.java:861)
> at org.jboss.as.cli.impl.ValueTypeCompleter$ValueTypeCallbackHandler.getCandidates(ValueTypeCompleter.java:475)
> at org.jboss.as.cli.impl.ValueTypeCompleter.complete(ValueTypeCompleter.java:321)
> at org.jboss.as.cli.operation.OperationRequestCompleter.complete(OperationRequestCompleter.java:254)
> at org.jboss.as.cli.operation.OperationRequestCompleter.complete(OperationRequestCompleter.java:74)
> at org.jboss.as.cli.CommandCompleter.doComplete(CommandCompleter.java:137)
> at org.jboss.as.cli.CommandCompleter.complete(CommandCompleter.java:64)
> at org.jboss.as.cli.impl.Console$Factory$1$1.complete(Console.java:143)
> at org.jboss.aesh.console.AeshCompletionHandler.complete(AeshCompletionHandler.java:155)
> at org.jboss.aesh.console.AeshInputProcessor.complete(AeshInputProcessor.java:427)
> at org.jboss.aesh.console.AeshInputProcessor.parseOperation(AeshInputProcessor.java:165)
> at org.jboss.aesh.console.Console.processInternalOperation(Console.java:773)
> at org.jboss.aesh.console.Console.execute(Console.java:733)
> at org.jboss.aesh.console.Console.access$900(Console.java:73)
> at org.jboss.aesh.console.Console$6.run(Console.java:642)
> 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)
> [mkopecky@dhcp-10-40-5-171 bin]$
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
9 years, 7 months
[JBoss JIRA] (WFLY-7209) Operation to list installed Resource Adapters
by Jesper Pedersen (JIRA)
[ https://issues.jboss.org/browse/WFLY-7209?page=com.atlassian.jira.plugin.... ]
Jesper Pedersen reassigned WFLY-7209:
-------------------------------------
Assignee: Stefano Maestri (was: Jesper Pedersen)
> Operation to list installed Resource Adapters
> ---------------------------------------------
>
> Key: WFLY-7209
> URL: https://issues.jboss.org/browse/WFLY-7209
> Project: WildFly
> Issue Type: Feature Request
> Components: JCA
> Reporter: Guillermo González de Agüero
> Assignee: Stefano Maestri
> Fix For: 10.1.0.Final
>
>
> Currently there's no way to list all the installed Resource Adapters. Only configured resource adapters can be queried. However, they are automatically enabled at deployment time.
> I propose to add a new operation to list installed RAs and their configuration, similar to the one available for JDBC drivers. This would allow HAL to provide a wizard of available options when configuring them.
> The command would be something like: /subsystem=resource-adapters:installed-resource-adapters-list()
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
9 years, 7 months