[JBoss JIRA] (WFLY-2427) Launcher API
by Max Rydahl Andersen (JIRA)
[ https://issues.jboss.org/browse/WFLY-2427?page=com.atlassian.jira.plugin.... ]
Max Rydahl Andersen commented on WFLY-2427:
-------------------------------------------
btw. at little more background:
We don't call the OS specific script for one primary reason:
There is no portable way of calling these scripts AND have control over the Java process (i.e. we need to be able to kill it in case the user already have a running server on the same port. JBoss will start up saying it cannot use the port but will not exit - and any attempt to kill it via management would kill the other running server.)
The main problem not using the scripts are that user customized fields/properties are *not* honored.
Things like memory settings edit in run.conf or run.conf.bat wont be understood by the tooling.
We would optimally prefer we could simply do this:
java -jar jboss-modules.jar -properties run.properties
And then whatever settings there are in run.properties gets applied/honored.
That can work for majority of the jboss properties, but for vm flags like memory settings and properties that could be relevant before jboss-modules kicks in (i.e. -Djava.net.preferIPv4Stack=true) would be necessary to read some otherway and done by the servers script files.
> Launcher API
> ------------
>
> Key: WFLY-2427
> URL: https://issues.jboss.org/browse/WFLY-2427
> Project: WildFly
> Issue Type: Feature Request
> Security Level: Public(Everyone can see)
> Components: Server
> Reporter: Brian Stansberry
>
> 1) The AS should have some sort of API for launching our processes so tools that want a process have a clear contract instead of having to guess at what's relevant in our ever-changing scripts.
> 2) We want the main class in our process launch to be what's invoked by java -jar jboss-modules.jar. We don't want java -jar jboss-as-launcher.jar which does some stuff and then calls org.jboss.modules.Main.
> 3) JBoss Modules itself shouldn't have a lot of the stuff in it that's relevant to an AS launcher API, because many of those things are not relevant to JBoss Modules in a generic sense.
> What we could do though is provide a launcher lib that isn't involved at all in our normal boot. Something that would only be used by tools that want to launch a separate, i.e. non-embedded, AS process.
> So, some sort of stable configuration API and then a simple
> java.lang.Process launch()
> Basically, a utility that does the ProcessBuilder stuff that everybody is doing themselves now.
> h2. HOWEVER...
> Eclipse-based tools like JBDS use Eclipse APIs for launch and would not use the above launch() method.
> So, besides that launch method, look into adding some methods to give the necessary inputs to the Eclipse API be useful. So Eclipse-based tools don't ask it for the process but can still get a standard launch configuration.
> I'd only want to do that if those methods would return something generally understandable, but a String or List<String> for classpath, List<String>s for vm/program args, some representation that "-jar jboss-modules.jar" is the way to get the main class -- those all seem generic enough.
> Any "which VM" stuff is consider out of scope; choosing the VM is the responsibility of the tool. Options that are not universally supported across VMs and are those a function of VM choice, like whether to use -server, are also out of scope.
> h2. Example of EAP 6.0 launch:
> VM arguments:
> -server -Xms64m -Xmx512m -XX:MaxPermSize=256m -Djava.net.preferIPv4Stack=true -Dorg.jboss.resolver.warning=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true "-Dorg.jboss.boot.log.file=/Users/max/products/runtimes/jboss-eap-6.0/standalone/log/boot.log" "-Dlogging.configuration=file:/Users/max/products/runtimes/jboss-eap-6.0/standalone/configuration/logging.properties" "-Djboss.home.dir=/Users/max/products/runtimes/jboss-eap-6.0"
> Program argument:
> -mp "/Users/max/products/runtimes/jboss-eap-6.0/modules" -jaxpmodule javax.xml.jaxp-provider org.jboss.as.standalone -b localhost --server-config=standalone.xml
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 2 months
[JBoss JIRA] (WFLY-2427) Launcher API
by Max Rydahl Andersen (JIRA)
[ https://issues.jboss.org/browse/WFLY-2427?page=com.atlassian.jira.plugin.... ]
Max Rydahl Andersen commented on WFLY-2427:
-------------------------------------------
If this library should be useful from tools perspective it should *not* be tied to a specifc version of the server since we need to launch many different versions of various jboss servers.
This kind of client launcher library would also be interesting for [~aslak] in the Arquillian project.
> Launcher API
> ------------
>
> Key: WFLY-2427
> URL: https://issues.jboss.org/browse/WFLY-2427
> Project: WildFly
> Issue Type: Feature Request
> Security Level: Public(Everyone can see)
> Components: Server
> Reporter: Brian Stansberry
>
> 1) The AS should have some sort of API for launching our processes so tools that want a process have a clear contract instead of having to guess at what's relevant in our ever-changing scripts.
> 2) We want the main class in our process launch to be what's invoked by java -jar jboss-modules.jar. We don't want java -jar jboss-as-launcher.jar which does some stuff and then calls org.jboss.modules.Main.
> 3) JBoss Modules itself shouldn't have a lot of the stuff in it that's relevant to an AS launcher API, because many of those things are not relevant to JBoss Modules in a generic sense.
> What we could do though is provide a launcher lib that isn't involved at all in our normal boot. Something that would only be used by tools that want to launch a separate, i.e. non-embedded, AS process.
> So, some sort of stable configuration API and then a simple
> java.lang.Process launch()
> Basically, a utility that does the ProcessBuilder stuff that everybody is doing themselves now.
> h2. HOWEVER...
> Eclipse-based tools like JBDS use Eclipse APIs for launch and would not use the above launch() method.
> So, besides that launch method, look into adding some methods to give the necessary inputs to the Eclipse API be useful. So Eclipse-based tools don't ask it for the process but can still get a standard launch configuration.
> I'd only want to do that if those methods would return something generally understandable, but a String or List<String> for classpath, List<String>s for vm/program args, some representation that "-jar jboss-modules.jar" is the way to get the main class -- those all seem generic enough.
> Any "which VM" stuff is consider out of scope; choosing the VM is the responsibility of the tool. Options that are not universally supported across VMs and are those a function of VM choice, like whether to use -server, are also out of scope.
> h2. Example of EAP 6.0 launch:
> VM arguments:
> -server -Xms64m -Xmx512m -XX:MaxPermSize=256m -Djava.net.preferIPv4Stack=true -Dorg.jboss.resolver.warning=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true "-Dorg.jboss.boot.log.file=/Users/max/products/runtimes/jboss-eap-6.0/standalone/log/boot.log" "-Dlogging.configuration=file:/Users/max/products/runtimes/jboss-eap-6.0/standalone/configuration/logging.properties" "-Djboss.home.dir=/Users/max/products/runtimes/jboss-eap-6.0"
> Program argument:
> -mp "/Users/max/products/runtimes/jboss-eap-6.0/modules" -jaxpmodule javax.xml.jaxp-provider org.jboss.as.standalone -b localhost --server-config=standalone.xml
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 2 months
[JBoss JIRA] (DROOLS-324) Conditional named consequences don't allow MVEL expressions in the condition of an if statement
by Mario Fusco (JIRA)
[ https://issues.jboss.org/browse/DROOLS-324?page=com.atlassian.jira.plugin... ]
Mario Fusco resolved DROOLS-324.
--------------------------------
Resolution: Cannot Reproduce Bug
I added this test case demonstrating that is working as expected
https://github.com/droolsjbpm/drools/commit/4934b87c4#diff-b48e3d5a1a0d2b...
Note that the default dialect is java, not mvel.
Also note that in the condition the last pattern is the implicit 'this', so in your case it is not necessary to explicitly referring to it. In other words:
if (status == 0)
works with both mvel and java dialect.
> Conditional named consequences don't allow MVEL expressions in the condition of an if statement
> -----------------------------------------------------------------------------------------------
>
> Key: DROOLS-324
> URL: https://issues.jboss.org/browse/DROOLS-324
> Project: Drools
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Affects Versions: 6.0.0.CR5
> Environment: Mac OS-X 10.9, JBoss Developer Studio 7, Oracle Hotspot 1.7.0_45
> Reporter: Duncan Doyle
> Assignee: Mario Fusco
> Labels: conditional, consequences, drools, mvel, named
>
> See this project, which is based on the standard Sample.drl of the Drools Eclipse plugin: https://github.com/DuncanDoyle/DroolsConditionalNamedConsequenceIssue
> As you can see in the 'src/main/resources/rules/Sample.drl', the first rule, which is commented out, uses an MVEL expression in the conditional 'if' statement, i.e. "if (m.status == Message.HELLO) break [sayHello]". The compiler throws this error:
> Rule Compilation error The field DroolsTest.Message.status is not visible.
> When I use a Java dialect and define the conditional if as " if (m.getStatus() == 0) break [sayHello]", as shown in the second rule everything works fine.
> Note that there is also an issue with using public constants in the condition, but I'll open another JIRA for that issue.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 2 months
[JBoss JIRA] (DROOLS-325) Conditional named consequences don't allow references to public fields
by Mario Fusco (JIRA)
[ https://issues.jboss.org/browse/DROOLS-325?page=com.atlassian.jira.plugin... ]
Mario Fusco resolved DROOLS-325.
--------------------------------
Resolution: Cannot Reproduce Bug
I added this test case demonstrating that it is working as expected
https://github.com/droolsjbpm/drools/commit/4934b87c4#diff-b48e3d5a1a0d2b...
> Conditional named consequences don't allow references to public fields
> ----------------------------------------------------------------------
>
> Key: DROOLS-325
> URL: https://issues.jboss.org/browse/DROOLS-325
> Project: Drools
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Affects Versions: 6.0.0.CR5
> Environment: Mac OS-X 10.9, JBoss Developer Studio, Oracle Hotspot 1.7.0_45
> Reporter: Duncan Doyle
> Assignee: Mario Fusco
> Labels: conditional, consequences, named
>
> See this project, which is based on the standard Sample.drl of the Drools Eclipse plugin:
> https://github.com/DuncanDoyle/DroolsConditionalNamedConsequenceIssue
> As you can see in the 'src/main/resources/rules/Sample.drl', the first rule, which is commented out, references the public fields Message.HELLO and Message.GOODBYE in the conditional 'if' statement, i.e. "if (m.status == Message.HELLO) break [sayHello]". The compiler throws this error:
> Rule Compilation error HELLO cannot be resolved or is not a field.
> When I use the actual value of Message.HELLO and Message.GOODBYE, as shown in the second rule 'if (m.getStatus() == 0) break [sayHello]', everything works fine.
> Please note that there is also an issue with using MVEL expressions in Conditional named consequences (as you can see in my example rules). That issue is tracked in JIRA DROOLS-324.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 2 months
[JBoss JIRA] (DROOLS-324) Conditional named consequences don't allow MVEL expressions in the condition of an if statement
by Mario Fusco (JIRA)
[ https://issues.jboss.org/browse/DROOLS-324?page=com.atlassian.jira.plugin... ]
Mario Fusco reassigned DROOLS-324:
----------------------------------
Assignee: Mario Fusco (was: Mark Proctor)
> Conditional named consequences don't allow MVEL expressions in the condition of an if statement
> -----------------------------------------------------------------------------------------------
>
> Key: DROOLS-324
> URL: https://issues.jboss.org/browse/DROOLS-324
> Project: Drools
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Affects Versions: 6.0.0.CR5
> Environment: Mac OS-X 10.9, JBoss Developer Studio 7, Oracle Hotspot 1.7.0_45
> Reporter: Duncan Doyle
> Assignee: Mario Fusco
> Labels: conditional, consequences, drools, mvel, named
>
> See this project, which is based on the standard Sample.drl of the Drools Eclipse plugin: https://github.com/DuncanDoyle/DroolsConditionalNamedConsequenceIssue
> As you can see in the 'src/main/resources/rules/Sample.drl', the first rule, which is commented out, uses an MVEL expression in the conditional 'if' statement, i.e. "if (m.status == Message.HELLO) break [sayHello]". The compiler throws this error:
> Rule Compilation error The field DroolsTest.Message.status is not visible.
> When I use a Java dialect and define the conditional if as " if (m.getStatus() == 0) break [sayHello]", as shown in the second rule everything works fine.
> Note that there is also an issue with using public constants in the condition, but I'll open another JIRA for that issue.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 2 months
[JBoss JIRA] (DROOLS-325) Conditional named consequences don't allow references to public fields
by Mario Fusco (JIRA)
[ https://issues.jboss.org/browse/DROOLS-325?page=com.atlassian.jira.plugin... ]
Mario Fusco reassigned DROOLS-325:
----------------------------------
Assignee: Mario Fusco (was: Mark Proctor)
> Conditional named consequences don't allow references to public fields
> ----------------------------------------------------------------------
>
> Key: DROOLS-325
> URL: https://issues.jboss.org/browse/DROOLS-325
> Project: Drools
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Affects Versions: 6.0.0.CR5
> Environment: Mac OS-X 10.9, JBoss Developer Studio, Oracle Hotspot 1.7.0_45
> Reporter: Duncan Doyle
> Assignee: Mario Fusco
> Labels: conditional, consequences, named
>
> See this project, which is based on the standard Sample.drl of the Drools Eclipse plugin:
> https://github.com/DuncanDoyle/DroolsConditionalNamedConsequenceIssue
> As you can see in the 'src/main/resources/rules/Sample.drl', the first rule, which is commented out, references the public fields Message.HELLO and Message.GOODBYE in the conditional 'if' statement, i.e. "if (m.status == Message.HELLO) break [sayHello]". The compiler throws this error:
> Rule Compilation error HELLO cannot be resolved or is not a field.
> When I use the actual value of Message.HELLO and Message.GOODBYE, as shown in the second rule 'if (m.getStatus() == 0) break [sayHello]', everything works fine.
> Please note that there is also an issue with using MVEL expressions in Conditional named consequences (as you can see in my example rules). That issue is tracked in JIRA DROOLS-324.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 2 months
[JBoss JIRA] (WFLY-1145) missing beans.xml in archive using javax.inject shouldn't *silently* ignore injection sites
by Jozef Hartinger (JIRA)
[ https://issues.jboss.org/browse/WFLY-1145?page=com.atlassian.jira.plugin.... ]
Jozef Hartinger resolved WFLY-1145.
-----------------------------------
Resolution: Out of Date
This was already implemented in WildFly.
> missing beans.xml in archive using javax.inject shouldn't *silently* ignore injection sites
> -------------------------------------------------------------------------------------------
>
> Key: WFLY-1145
> URL: https://issues.jboss.org/browse/WFLY-1145
> Project: WildFly
> Issue Type: Feature Request
> Security Level: Public(Everyone can see)
> Components: CDI / Weld
> Environment: N/A, any Java EE 6
> Reporter: Craig Ringer
> Priority: Minor
> Labels: cdi, injection, injectionpoint, usability
>
> It's common, especially for new users of Java EE and CDI, for confusion to arise because of a missing or misplaced beans.xml file. Injection sites that should be injected are null, interceptors don't run, etc. People experienced with CDI immediately spot what's wrong, but if you haven't worked with EE much it can throw you quite badly.
> It's particularly problematic when beans.xml exists, but isn't where the server expects it to be. This can happen when a jar-layout archive is deployed as a .war or vice versa (something newbies can and will do), or when beans.xml is placed in META-INF/ for a war archive where it's supposed to be in WEB-INF/ .
> It would be very helpful if it were possible to efficiently detect an archive that uses javax.inject.* annotations without a beans.xml file and issue a warning. To enhance the usability of CDI and its accessibility to new developers, IMO the spec should encourage this.
> A deployment error when javax.inject.Inject etc are used without a beans.xml file isn't appropriate, as there may be non-CDI code using those annotations, but a warning would make a big difference to usability.
> It's possible this is better done in an application-server specific context rather than as anything to do with the CDI specification, since the AS is scanning the archive during deployment anyway. If that's the case, it's probably best to move this issue to the JBoss AS 7 JIRA.
> If it's possible for a CDI impl to *efficiently* detect javax.inject.* and warn, though, it'd be a good thing to encourage in the spec.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 2 months
[JBoss JIRA] (WFLY-2457) HttpUpgradeHandlerInjectionSupportTestCase fails on Windows
by Jozef Hartinger (JIRA)
Jozef Hartinger created WFLY-2457:
-------------------------------------
Summary: HttpUpgradeHandlerInjectionSupportTestCase fails on Windows
Key: WFLY-2457
URL: https://issues.jboss.org/browse/WFLY-2457
Project: WildFly
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Test Suite
Reporter: Jozef Hartinger
Assignee: Jozef Hartinger
{quote}
This test fails on windows and I am not 100% sure why. I think it would be something to do with the different line endings, although I can't see why this would affect it
{quote}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 2 months