[
https://issues.apache.org/jira/browse/GERONIMO-2105?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Vamsavardhana Reddy updated GERONIMO-2105:
------------------------------------------
Affects Version/s: 2.0
1.2
1.1.2
Fix Version/s: (was: 1.1.x)
2.0
1.x
1.1.2
Some of the recent recent deployer fixes seems to have fixed this problem in
branches\1.1 (with a glitch that the migrated values reflect only upon
restarting the app explicitly). The problem still remains in 1.2 and 2.0.
Here are my findings from the investigation I have done using sample web
applications g2105.war and g2105-1.2.war. Excerpt from config.xml at each step
is given where ever relevant.
branches\1.1 (rev 492571)
step 1: Deploy g2105.war
{code}
<module name="jira/G2105/1167917098620/war"/>
{code}
step 2: Access http://localhost:8080/G2105/ . The browser should show
"Attribute value is ORIGINAL".
{code}
<module name="jira/G2105/1167917098620/war">
<gbean
name="jira/G2105/1167917098620/war?J2EEApplication=null,WebModule=jira/G2105/1167917098620/war,j2eeType=SecurityRealm,name=ORIGINAL">
<attribute name="realmName">CHANGED</attribute>
</gbean>
</module>
{code}
step 3: Redeploy g2105.war
{code}
<module name="jira/G2105/1167917210461/war">
<gbean
name="jira/G2105/1167917210461/war?J2EEApplication=null,WebModule=jira/G2105/1167917210461/war,j2eeType=SecurityRealm,name=ORIGINAL">
<attribute name="realmName">CHANGED</attribute>
</gbean>
</module>
{code}
Note: Even though the config.xml entry is migrated properly, the value change
does not reflect until the application (or server) is restarted explicitly
after step 3.
step 4: Access http://localhost:8080/G2105/ . The browser should show
"Attribute value is CHANGED".
branches\1.2 (rev 492571)
step 1: deploy g2105-1.2.war
{code}
<module name="jira/G2105/1167917997542/war"/>
{code}
step 2: Access http://localhost:8080/G2105/
{code}
<module name="jira/G2105/1167917997542/war">
<gbean
name="jira/G2105/1167917997542/war?J2EEApplication=null,WebModule=jira/G2105/1167917997542/war,j2eeType=SecurityRealm,name=ORIGINAL">
<attribute name="realmName">CHANGED</attribute>
</gbean>
</module>
{code}
step 3: Redeploy g2105-1.2.war
{code}
<module name="jira/G2105/1167918100641/war">
<gbean
name="jira/G2105/1167917997542/war?J2EEApplication=null,WebModule=jira/G2105/1167917997542/war,j2eeType=SecurityRealm,name=ORIGINAL">
<attribute name="realmName">CHANGED</attribute>
</gbean>
</module>
{code}
step 4: Access http://localhost:8080/G2105/
{code}
<module name="jira/G2105/1167918100641/war">
<gbean
name="jira/G2105/1167917997542/war?J2EEApplication=null,WebModule=jira/G2105/1167917997542/war,j2eeType=SecurityRealm,name=ORIGINAL">
<attribute name="realmName">CHANGED</attribute>
</gbean>
<gbean
name="jira/G2105/1167918100641/war?J2EEApplication=null,WebModule=jira/G2105/1167918100641/war,j2eeType=SecurityRealm,name=ORIGINAL">
<attribute name="realmName">CHANGED</attribute>
</gbean>
</module>
{code}
step 5: Restart of G fails
trunk (rev 492571)
step 1: deploy g2105-1.2.war
{code}
<module name="jira/G2105/1167920244553/war"/>
{code}
step 2: Access http://localhost:8080/G2105/
{code}
<module name="jira/G2105/1167920244553/war">
<gbean
name="jira/G2105/1167920244553/war?J2EEApplication=null,WebModule=jira/G2105/1167920244553/war,j2eeType=SecurityRealm,name=ORIGINAL">
<attribute name="realmName">CHANGED</attribute>
</gbean>
</module>
{code}
step 3: Redeploy g2105-1.2.war
{code}
<module name="jira/G2105/1167920343696/war">
<gbean
name="jira/G2105/1167920244553/war?J2EEApplication=null,WebModule=jira/G2105/1167920244553/war,j2eeType=SecurityRealm,name=ORIGINAL">
<attribute name="realmName">CHANGED</attribute>
</gbean>
</module>
{code}
step 4: Access http://localhost:8080/G2105/
{code}
<module name="jira/G2105/1167920343696/war">
<gbean
name="jira/G2105/1167920244553/war?J2EEApplication=null,WebModule=jira/G2105/1167920244553/war,j2eeType=SecurityRealm,name=ORIGINAL">
<attribute name="realmName">CHANGED</attribute>
</gbean>
<gbean
name="jira/G2105/1167920343696/war?J2EEApplication=null,WebModule=jira/G2105/1167920343696/war,j2eeType=SecurityRealm,name=ORIGINAL">
<attribute name="realmName">CHANGED</attribute>
</gbean>
</module>
{code}
step 5: Restart of G fails
> When redeploying with no version number, new entries in config.xml break
> ------------------------------------------------------------------------
>
> Key: GERONIMO-2105
> URL: https://issues.apache.org/jira/browse/GERONIMO-2105
> Project: Geronimo
> Issue Type: Bug
> Security Level: public(Regular issues)
> Components: kernel
> Affects Versions: 1.1, 1.1.2, 1.2, 2.0
> Reporter: Aaron Mulder
> Priority: Blocker
> Fix For: 1.1.2, 1.x, 2.0
>
> Attachments: g2105-1.2.war, g2105.war
>
>
> Let's say you deploy foo with no version number and config.xml content. Then
> through the console or some other mechanism, you set a property on a
> previously unlisted GBean. Now you get something like this:
> <module name="default/foo/1149955208117/war">
> <gbean
> name="default/foo/1149955208117/war?J2EEApplication=null,WebModule=default/foo/1149955208117/war,j2eeType=GBean,name=MyGBean">
> <attribute name="bar">value</attribute>
> Now you redeploy foo, and it migrates the config.xml entry to the new version
> number. However, what you actually get is this:
> <module name="default/foo/1149955408117/war">
> <gbean
> name="default/foo/1149955223470/war?J2EEApplication=null,WebModule=default/foo/1149955223470/war,j2eeType=GBean,name=MyGBean">
> <attribute name="bar">value</attribute>
> Note the different version numbers between module and gbean elements. In
> other words, the version in the main config.xml entry is updated, but the
> version in the GBean entries is not. This means that the module will fail to
> start, as it will treat the GBean as a brand new GBean declaration and crap
> out when it has no GBeanInfo defined.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira