You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geronimo.apache.org by "Donald Woods (JIRA)" <ji...@apache.org> on 2008/03/10 20:56:47 UTC

[jira] Updated: (GERONIMO-3243) ActiveMQ violates System Properties

     [ https://issues.apache.org/jira/browse/GERONIMO-3243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Donald Woods updated GERONIMO-3243:
-----------------------------------

             Priority: Major  (was: Blocker)
    Affects Version/s: 2.2
        Fix Version/s:     (was: 2.1.1)
                           (was: 2.0.x)
                       2.2

Assigning to 2.2, given the move to AMQ 5.0 will require some integration rework, which shouldn't go into a maintenance release like 2.1.1.


> ActiveMQ violates System Properties
> -----------------------------------
>
>                 Key: GERONIMO-3243
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-3243
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: ActiveMQ
>    Affects Versions: 2.0.1, 2.0.2, 2.0.x, 2.1, 2.1.1, 2.2
>            Reporter: solprovider
>             Fix For: 2.2
>
>
> The latest Geronimo 1.2 and 2.0 use ActiveMQ.  (Would someone familiar with Geronimo development please add all affected versions?)
> ActiveMQ adds a HashMap as a global Property named "org.apache.activeio.journal.active.lockMap".
> Properties must use Strings for keys and values per http://java.sun.com/j2se/1.4.2/docs/api/java/util/Properties.html
> This causes any code reading all the Properties and expecting Strings to error.
> {code:title=Test Code|borderStyle=solid}
>    boolean test(){  //true = passes, false = failed.
>       boolean test = true;
>       java.util.Properties properties = System.getProperties();
>       java.util.Enumeration enumeration = properties.elements();
>       while(test & enumeration.hasMoreElements()) test= String.class.equals(enumeration.nextElement().getClass());
>       enumeration = properties.keys();
>       while(test & enumeration.hasMoreElements()) test= String.class.equals(enumeration.nextElement().getClass());
>       return test;
>    }
> {code}
> The permanent fix is for Geronimo to update to a better version of ActiveMQ, either downgrading to before the bug was programmed or wait for the ActiveMQ team to follow the standards.  That is unlikely to be tested and released quickly.
> The quick fix  is to disable the offensive code.  For Geronimo 1.2 on Windows, add this line at the beginning of STARTUP.BAT:
> SET GERONIMO_OPTS=-Dorg.apache.activeio.journal.active.DisableLocking=true %GERONIMO_OPTS%
> David Jencks suggested that Geronimo can set the org.apache.activeio.journal.active.DisableLocking property in a Geronimo SystemProperties gbean, there's one called ServerSystemProperties in j2ee-server.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.