Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-5233

Jabber plugin options not showing up in configure

    Details

    • Similar Issues:

      Description

      After the update to 1.339 Jabber options seem to dissapear from configure forms, hudson form and individual project ones as well.

      The plugin is still running using previous config, but the option fields do not show up in the forms. Thus new projects have no configuration in them.

        Attachments

          Activity

          rdohms rdohms created issue -
          Hide
          kutzi kutzi added a comment -

          Seems to be the analogue issue to http://issues.jenkins-ci.org/browse/JENKINS-5128

          Could you please do 2 things:

          • attach the file hudson.plugins.jabber.im.transport.JabberPublisher.xml (of course, you should mask all user names/password in there first)
          • try the workaround described in JENKINS-5128 (apply it to hudson.plugins.jabber.im.transport.JabberPublisher.xml of course)
          Show
          kutzi kutzi added a comment - Seems to be the analogue issue to http://issues.jenkins-ci.org/browse/JENKINS-5128 Could you please do 2 things: attach the file hudson.plugins.jabber.im.transport.JabberPublisher.xml (of course, you should mask all user names/password in there first) try the workaround described in JENKINS-5128 (apply it to hudson.plugins.jabber.im.transport.JabberPublisher.xml of course)
          Hide
          rdohms rdohms added a comment -

          The workaround worked, and here is the config file.

          Show
          rdohms rdohms added a comment - The workaround worked, and here is the config file.
          rdohms rdohms made changes -
          Field Original Value New Value
          Attachment hudson.plugins.jabber.im.transport.JabberPublisher.xml.txt [ 19012 ]
          Hide
          rdohms rdohms added a comment -

          Just noted that next time i restarted Hudson, fields once again went missing.

          Show
          rdohms rdohms added a comment - Just noted that next time i restarted Hudson, fields once again went missing.
          Hide
          kutzi kutzi added a comment -

          Just to be clear:
          You updated to Hudson 1.339 (BTW: from which previous version?) and you did NOT update the jabber and instant-messaging plugin
          and after that the config disappeared?

          Show
          kutzi kutzi added a comment - Just to be clear: You updated to Hudson 1.339 (BTW: from which previous version?) and you did NOT update the jabber and instant-messaging plugin and after that the config disappeared?
          Hide
          rdohms rdohms added a comment -

          can't confirm exactly where the config vanished, since I only noticed at a later point. But it was there the day before i updated for sure.

          But i did upgrade Hudson first then installed whatever plugin updates were available.

          The upgrade was from 1.337.

          Show
          rdohms rdohms added a comment - can't confirm exactly where the config vanished, since I only noticed at a later point. But it was there the day before i updated for sure. But i did upgrade Hudson first then installed whatever plugin updates were available. The upgrade was from 1.337.
          Hide
          kutzi kutzi added a comment -

          The config file looks absolutely fine to me.

          Is there anything interesting in the log file.
          If not, could you try to increase the log level and look again?

          Show
          kutzi kutzi added a comment - The config file looks absolutely fine to me. Is there anything interesting in the log file. If not, could you try to increase the log level and look again?
          Hide
          rdohms rdohms added a comment -

          Upgraded to 1.341 and restarted, below is the log but there is nothing interesting in it related to this bug, i think.
          Log seems to be at highest level.

          [Winstone 2010/01/18 19:34:24] - HTTP Listener started: port=8080
          [Winstone 2010/01/18 19:34:24] - AJP13 Listener started: port=8009
          [Winstone 2010/01/18 19:34:24] - Winstone Servlet Engine v0.9.10 running: controlPort=disabled
          18 Jan 2010 7:34:24 PM hudson.model.Hudson$4 onAttained
          INFO: Started initialization
          18 Jan 2010 7:34:32 PM hudson.model.Hudson$4 onAttained
          INFO: Listed all plugins
          18 Jan 2010 7:34:42 PM hudson.plugins.im.HudsonIsBusyListener <init>
          INFO: Executor busy listener created
          18 Jan 2010 7:34:42 PM hudson.model.Hudson$4 onAttained
          INFO: Prepared all plugins
          18 Jan 2010 7:34:42 PM hudson.model.Hudson$4 onAttained
          INFO: Started all plugins
          18 Jan 2010 7:34:52 PM org.springframework.context.support.AbstractApplicationContext prepareRefresh
          INFO: Refreshing org.springframework.web.context.support.StaticWebApplicationContext@3cdfd643: display name [Root WebApplicationContext]; startup date [Mon Jan 18 19:34:52 SAST 2010]; root of context hierarchy
          18 Jan 2010 7:34:52 PM org.springframework.context.support.AbstractApplicationContext obtainFreshBeanFactory
          INFO: Bean factory for application context [org.springframework.web.context.support.StaticWebApplicationContext@3cdfd643]: org.springframework.beans.factory.support.DefaultListableBeanFactory@2a85f3d6
          18 Jan 2010 7:34:52 PM org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons
          INFO: Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@2a85f3d6: defining beans [daoAuthenticationProvider,authenticationManager,userDetailsService]; root of factory hierarchy
          18 Jan 2010 7:34:56 PM hudson.plugins.dbcharts.DbChartPublisher$DescriptorImpl <init>
          INFO: DescriptorImpl constructed
          java.io.FileNotFoundException: /usr/lib/jvm/java-6-openjdk/jre/lib/security/cacerts (No such file or directory)
          at java.io.FileInputStream.open(Native Method)
          at java.io.FileInputStream.<init>(FileInputStream.java:137)
          at java.io.FileInputStream.<init>(FileInputStream.java:96)
          at org.jivesoftware.smack.ServerTrustManager.<init>(ServerTrustManager.java:54)
          at org.jivesoftware.smack.XMPPConnection.proceedTLSReceived(XMPPConnection.java:1109)
          at org.jivesoftware.smack.PacketReader.parsePackets(PacketReader.java:327)
          at org.jivesoftware.smack.PacketReader.access$000(PacketReader.java:43)
          at org.jivesoftware.smack.PacketReader$1.run(PacketReader.java:63)
          18 Jan 2010 7:35:03 PM hudson.plugins.jabber.im.transport.JabberIMConnection connect
          INFO: Connected to XMPP on [REMOVED]:5222
          java.io.FileNotFoundException: /usr/lib/jvm/java-6-openjdk/jre/lib/security/cacerts (No such file or directory)
          at java.io.FileInputStream.open(Native Method)
          at java.io.FileInputStream.<init>(FileInputStream.java:137)
          at java.io.FileInputStream.<init>(FileInputStream.java:96)
          at org.jivesoftware.smack.ServerTrustManager.<init>(ServerTrustManager.java:54)
          at org.jivesoftware.smack.XMPPConnection.proceedTLSReceived(XMPPConnection.java:1109)
          at org.jivesoftware.smack.PacketReader.parsePackets(PacketReader.java:327)
          at org.jivesoftware.smack.PacketReader.access$000(PacketReader.java:43)
          at org.jivesoftware.smack.PacketReader$1.run(PacketReader.java:63)
          18 Jan 2010 7:35:07 PM hudson.plugins.jabber.im.transport.JabberIMConnection connect
          INFO: Connected to XMPP on [REMOVED]:5222
          18 Jan 2010 7:35:11 PM hudson.model.Hudson$4 onAttained
          INFO: Loaded all jobs
          18 Jan 2010 7:35:13 PM hudson.model.Hudson$4 onAttained
          INFO: Completed initialization
          18 Jan 2010 7:35:13 PM org.springframework.context.support.AbstractApplicationContext prepareRefresh
          INFO: Refreshing org.springframework.web.context.support.StaticWebApplicationContext@39df3255: display name [Root WebApplicationContext]; startup date [Mon Jan 18 19:35:13 SAST 2010]; root of context hierarchy
          18 Jan 2010 7:35:13 PM org.springframework.context.support.AbstractApplicationContext obtainFreshBeanFactory
          INFO: Bean factory for application context [org.springframework.web.context.support.StaticWebApplicationContext@39df3255]: org.springframework.beans.factory.support.DefaultListableBeanFactory@6064af0f
          18 Jan 2010 7:35:13 PM org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons
          INFO: Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@6064af0f: defining beans [filter,legacy]; root of factory hierarchy
          18 Jan 2010 7:35:14 PM hudson.TcpSlaveAgentListener <init>
          INFO: JNLP slave agent listener started on TCP port 36443

          Show
          rdohms rdohms added a comment - Upgraded to 1.341 and restarted, below is the log but there is nothing interesting in it related to this bug, i think. Log seems to be at highest level. [Winstone 2010/01/18 19:34:24] - HTTP Listener started: port=8080 [Winstone 2010/01/18 19:34:24] - AJP13 Listener started: port=8009 [Winstone 2010/01/18 19:34:24] - Winstone Servlet Engine v0.9.10 running: controlPort=disabled 18 Jan 2010 7:34:24 PM hudson.model.Hudson$4 onAttained INFO: Started initialization 18 Jan 2010 7:34:32 PM hudson.model.Hudson$4 onAttained INFO: Listed all plugins 18 Jan 2010 7:34:42 PM hudson.plugins.im.HudsonIsBusyListener <init> INFO: Executor busy listener created 18 Jan 2010 7:34:42 PM hudson.model.Hudson$4 onAttained INFO: Prepared all plugins 18 Jan 2010 7:34:42 PM hudson.model.Hudson$4 onAttained INFO: Started all plugins 18 Jan 2010 7:34:52 PM org.springframework.context.support.AbstractApplicationContext prepareRefresh INFO: Refreshing org.springframework.web.context.support.StaticWebApplicationContext@3cdfd643: display name [Root WebApplicationContext] ; startup date [Mon Jan 18 19:34:52 SAST 2010] ; root of context hierarchy 18 Jan 2010 7:34:52 PM org.springframework.context.support.AbstractApplicationContext obtainFreshBeanFactory INFO: Bean factory for application context [org.springframework.web.context.support.StaticWebApplicationContext@3cdfd643] : org.springframework.beans.factory.support.DefaultListableBeanFactory@2a85f3d6 18 Jan 2010 7:34:52 PM org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons INFO: Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@2a85f3d6: defining beans [daoAuthenticationProvider,authenticationManager,userDetailsService] ; root of factory hierarchy 18 Jan 2010 7:34:56 PM hudson.plugins.dbcharts.DbChartPublisher$DescriptorImpl <init> INFO: DescriptorImpl constructed java.io.FileNotFoundException: /usr/lib/jvm/java-6-openjdk/jre/lib/security/cacerts (No such file or directory) at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream.<init>(FileInputStream.java:137) at java.io.FileInputStream.<init>(FileInputStream.java:96) at org.jivesoftware.smack.ServerTrustManager.<init>(ServerTrustManager.java:54) at org.jivesoftware.smack.XMPPConnection.proceedTLSReceived(XMPPConnection.java:1109) at org.jivesoftware.smack.PacketReader.parsePackets(PacketReader.java:327) at org.jivesoftware.smack.PacketReader.access$000(PacketReader.java:43) at org.jivesoftware.smack.PacketReader$1.run(PacketReader.java:63) 18 Jan 2010 7:35:03 PM hudson.plugins.jabber.im.transport.JabberIMConnection connect INFO: Connected to XMPP on [REMOVED] :5222 java.io.FileNotFoundException: /usr/lib/jvm/java-6-openjdk/jre/lib/security/cacerts (No such file or directory) at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream.<init>(FileInputStream.java:137) at java.io.FileInputStream.<init>(FileInputStream.java:96) at org.jivesoftware.smack.ServerTrustManager.<init>(ServerTrustManager.java:54) at org.jivesoftware.smack.XMPPConnection.proceedTLSReceived(XMPPConnection.java:1109) at org.jivesoftware.smack.PacketReader.parsePackets(PacketReader.java:327) at org.jivesoftware.smack.PacketReader.access$000(PacketReader.java:43) at org.jivesoftware.smack.PacketReader$1.run(PacketReader.java:63) 18 Jan 2010 7:35:07 PM hudson.plugins.jabber.im.transport.JabberIMConnection connect INFO: Connected to XMPP on [REMOVED] :5222 18 Jan 2010 7:35:11 PM hudson.model.Hudson$4 onAttained INFO: Loaded all jobs 18 Jan 2010 7:35:13 PM hudson.model.Hudson$4 onAttained INFO: Completed initialization 18 Jan 2010 7:35:13 PM org.springframework.context.support.AbstractApplicationContext prepareRefresh INFO: Refreshing org.springframework.web.context.support.StaticWebApplicationContext@39df3255: display name [Root WebApplicationContext] ; startup date [Mon Jan 18 19:35:13 SAST 2010] ; root of context hierarchy 18 Jan 2010 7:35:13 PM org.springframework.context.support.AbstractApplicationContext obtainFreshBeanFactory INFO: Bean factory for application context [org.springframework.web.context.support.StaticWebApplicationContext@39df3255] : org.springframework.beans.factory.support.DefaultListableBeanFactory@6064af0f 18 Jan 2010 7:35:13 PM org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons INFO: Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@6064af0f: defining beans [filter,legacy] ; root of factory hierarchy 18 Jan 2010 7:35:14 PM hudson.TcpSlaveAgentListener <init> INFO: JNLP slave agent listener started on TCP port 36443
          Hide
          kutzi kutzi added a comment -

          Are you sure that you are running at the highest log level?
          I can only see INFO messages and I would expect FINEST or DEBUG messages - depending on the logging framework in use.

          Show
          kutzi kutzi added a comment - Are you sure that you are running at the highest log level? I can only see INFO messages and I would expect FINEST or DEBUG messages - depending on the logging framework in use.
          Hide
          rdohms rdohms added a comment -

          not sure how i can do that in HUDSON, any idea?

          Show
          rdohms rdohms added a comment - not sure how i can do that in HUDSON, any idea?
          Hide
          hopfrog238 hopfrog238 added a comment -

          I have had this happen to me continually as well. I still receive the expected jabber messages, and the bot appears in our group chat, but no configuration screens are displayed on either the "Manage Hudson" interface nor the job configuration forms. I've observed that if I completely remove the jabber plugin (manually removing relevant files from ~/.hudson) and restart, I'll see the configuration elements, only to lose them with the next restart.

          Are you looking for log messages that occur upon Hudson start, or just when I access the forms in question? Also, do you need all Loggers included, or just the one for you package?

          Show
          hopfrog238 hopfrog238 added a comment - I have had this happen to me continually as well. I still receive the expected jabber messages, and the bot appears in our group chat, but no configuration screens are displayed on either the "Manage Hudson" interface nor the job configuration forms. I've observed that if I completely remove the jabber plugin (manually removing relevant files from ~/.hudson) and restart, I'll see the configuration elements, only to lose them with the next restart. Are you looking for log messages that occur upon Hudson start, or just when I access the forms in question? Also, do you need all Loggers included, or just the one for you package?
          Hide
          kutzi kutzi added a comment -

          hopfrog238: I guess if there's anything logged, it will happen when the form is accessed.
          I need output from all loggers as I cannot localize the problem, currently.

          rdohms: I found this one http://wiki.jenkins-ci.org/display/JENKINS/Logging
          Cannot give much help on it, though.

          The packages in question for the jabber plugin are hudson.plugins.im and hudson.plugins.jabber
          The core packages of Hudson start AFAIK all also with hudson - not sure if you can narrow it down further.

          Show
          kutzi kutzi added a comment - hopfrog238: I guess if there's anything logged, it will happen when the form is accessed. I need output from all loggers as I cannot localize the problem, currently. rdohms: I found this one http://wiki.jenkins-ci.org/display/JENKINS/Logging Cannot give much help on it, though. The packages in question for the jabber plugin are hudson.plugins.im and hudson.plugins.jabber The core packages of Hudson start AFAIK all also with hudson - not sure if you can narrow it down further.
          Hide
          hopfrog238 hopfrog238 added a comment -

          This is with system log set to finest, from the time I configured the logger to when the "Configure System" page was rendered.

          Show
          hopfrog238 hopfrog238 added a comment - This is with system log set to finest, from the time I configured the logger to when the "Configure System" page was rendered.
          hopfrog238 hopfrog238 made changes -
          Attachment hudson.jabber.log.gz [ 19057 ]
          Hide
          hopfrog238 hopfrog238 added a comment -

          I've uploaded the logging. I have also log messages from the jabber and im plugins from when hudson starts, though appear just to be normal startup messages:

          Jan 24, 2010 7:20:12 PM hudson.plugins.jabber.im.transport.JabberIMConnection connect
          INFO: Joined groupchat devs@conference.jabber.XXXX.com

          Jan 24, 2010 7:20:12 PM hudson.plugins.jabber.im.transport.JabberIMConnection connect
          INFO: Connected to XMPP on jabber.xXXX.com:5222

          Show
          hopfrog238 hopfrog238 added a comment - I've uploaded the logging. I have also log messages from the jabber and im plugins from when hudson starts, though appear just to be normal startup messages: Jan 24, 2010 7:20:12 PM hudson.plugins.jabber.im.transport.JabberIMConnection connect INFO: Joined groupchat devs@conference.jabber.XXXX.com Jan 24, 2010 7:20:12 PM hudson.plugins.jabber.im.transport.JabberIMConnection connect INFO: Connected to XMPP on jabber.xXXX.com:5222
          Hide
          hopfrog238 hopfrog238 added a comment -

          As of hudson 1.345, the bot doesn't even log on, and there's no evidence that the plugin was successful starting up.

          I did find this trace in the logs which seems relevant:

          Feb 9, 2010 4:08:44 PM hudson.util.RobustCollectionConverter populateCollection
          WARNING: Failed to resolve class
          com.thoughtworks.xstream.mapper.CannotResolveClassException: hudson.plugins.cigame.UserScoreProperty : hudson.plugins.cigame.UserScoreProperty
          at com.thoughtworks.xstream.mapper.DefaultMapper.realClass(DefaultMapper.java:68)
          at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
          at com.thoughtworks.xstream.mapper.XStream11XmlFriendlyMapper.realClass(XStream11XmlFriendlyMapper.java:34)
          at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
          at com.thoughtworks.xstream.mapper.DynamicProxyMapper.realClass(DynamicProxyMapper.java:71)
          at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
          at com.thoughtworks.xstream.mapper.PackageAliasingMapper.realClass(PackageAliasingMapper.java:88)
          at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
          at com.thoughtworks.xstream.mapper.ClassAliasingMapper.realClass(ClassAliasingMapper.java:86)
          at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
          at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
          at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
          at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
          at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
          at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
          at com.thoughtworks.xstream.mapper.ArrayMapper.realClass(ArrayMapper.java:96)
          at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
          at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
          at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
          at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
          at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
          at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
          at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
          at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
          at com.thoughtworks.xstream.mapper.CachingMapper.realClass(CachingMapper.java:56)
          at com.thoughtworks.xstream.core.util.HierarchicalStreams.readClassType(HierarchicalStreams.java:29)
          at com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter.readItem(AbstractCollectionConverter.java:70)
          at hudson.util.RobustCollectionConverter.populateCollection(RobustCollectionConverter.java:86)
          at com.thoughtworks.xstream.converters.collections.CollectionConverter.unmarshal(CollectionConverter.java:61)
          at hudson.util.RobustCollectionConverter.unmarshal(RobustCollectionConverter.java:77)
          at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:82)
          at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:63)
          at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:76)
          at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:60)
          at hudson.util.RobustReflectionConverter.unmarshallField(RobustReflectionConverter.java:265)
          at hudson.util.RobustReflectionConverter.doUnmarshal(RobustReflectionConverter.java:223)
          at hudson.util.RobustReflectionConverter.unmarshal(RobustReflectionConverter.java:174)
          at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:82)
          at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:63)
          at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:76)
          at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:60)
          at com.thoughtworks.xstream.core.TreeUnmarshaller.start(TreeUnmarshaller.java:137)
          at com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.unmarshal(AbstractTreeMarshallingStrategy.java:33)
          at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:923)
          at hudson.util.XStream2.unmarshal(XStream2.java:70)
          at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:909)
          at hudson.XmlFile.unmarshal(XmlFile.java:148)
          at hudson.model.User.load(User.java:128)
          at hudson.model.User.<init>(User.java:112)
          at hudson.model.User.get(User.java:278)
          at hudson.security.HudsonPrivateSecurityRealm$HudsonUserDetailsService.loadUserByUsername(HudsonPrivateSecurityRealm.java:458)
          at org.acegisecurity.providers.dao.DaoAuthenticationProvider.retrieveUser(DaoAuthenticationProvider.java:127)
          at org.acegisecurity.providers.dao.AbstractUserDetailsAuthenticationProvider.authenticate(AbstractUserDetailsAuthenticationProvider.java:119)
          at org.acegisecurity.providers.ProviderManager.doAuthentication(ProviderManager.java:195)
          at org.acegisecurity.AbstractAuthenticationManager.authenticate(AbstractAuthenticationManager.java:45)
          at hudson.plugins.im.IMConnectionProvider.setDescriptor(IMConnectionProvider.java:85)
          at hudson.plugins.jabber.im.transport.JabberIMConnectionProvider.setDesc(JabberIMConnectionProvider.java:23)
          at hudson.plugins.jabber.im.transport.JabberPublisherDescriptor.<init>(JabberPublisherDescriptor.java:90)
          at hudson.plugins.jabber.im.transport.JabberPublisher.<clinit>(JabberPublisher.java:78)
          at sun.reflect.GeneratedSerializationConstructorAccessor246.newInstance(Unknown Source)
          at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
          at com.thoughtworks.xstream.converters.reflection.Sun14ReflectionProvider.newInstance(Sun14ReflectionProvider.java:76)
          at hudson.util.RobustReflectionConverter.instantiateNewInstance(RobustReflectionConverter.java:306)
          at hudson.util.RobustReflectionConverter.unmarshal(RobustReflectionConverter.java:173)
          at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:82)
          at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:63)
          at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:76)
          at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:60)
          at com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter.readItem(AbstractCollectionConverter.java:71)
          at hudson.util.CopyOnWriteList$ConverterImpl.unmarshal(CopyOnWriteList.java:186)
          at hudson.util.DescribableList$ConverterImpl.unmarshal(DescribableList.java:229)
          at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:82)
          at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:63)
          at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:76)
          at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:60)
          at hudson.util.RobustReflectionConverter.unmarshallField(RobustReflectionConverter.java:265)
          at hudson.util.RobustReflectionConverter.doUnmarshal(RobustReflectionConverter.java:223)
          at hudson.util.RobustReflectionConverter.unmarshal(RobustReflectionConverter.java:174)
          at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:82)
          at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:63)
          at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:76)
          at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:60)
          at com.thoughtworks.xstream.core.TreeUnmarshaller.start(TreeUnmarshaller.java:137)
          at com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.unmarshal(AbstractTreeMarshallingStrategy.java:33)
          at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:923)
          at hudson.util.XStream2.unmarshal(XStream2.java:70)
          at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:909)
          at com.thoughtworks.xstream.XStream.fromXML(XStream.java:853)
          at hudson.XmlFile.read(XmlFile.java:126)
          at hudson.model.Items.load(Items.java:106)
          at hudson.model.Hudson$12.run(Hudson.java:2110)
          at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:146)
          at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:259)
          at hudson.model.Hudson$3.runTask(Hudson.java:649)
          at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:187)
          at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:94)

          Show
          hopfrog238 hopfrog238 added a comment - As of hudson 1.345, the bot doesn't even log on, and there's no evidence that the plugin was successful starting up. I did find this trace in the logs which seems relevant: Feb 9, 2010 4:08:44 PM hudson.util.RobustCollectionConverter populateCollection WARNING: Failed to resolve class com.thoughtworks.xstream.mapper.CannotResolveClassException: hudson.plugins.cigame.UserScoreProperty : hudson.plugins.cigame.UserScoreProperty at com.thoughtworks.xstream.mapper.DefaultMapper.realClass(DefaultMapper.java:68) at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38) at com.thoughtworks.xstream.mapper.XStream11XmlFriendlyMapper.realClass(XStream11XmlFriendlyMapper.java:34) at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38) at com.thoughtworks.xstream.mapper.DynamicProxyMapper.realClass(DynamicProxyMapper.java:71) at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38) at com.thoughtworks.xstream.mapper.PackageAliasingMapper.realClass(PackageAliasingMapper.java:88) at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38) at com.thoughtworks.xstream.mapper.ClassAliasingMapper.realClass(ClassAliasingMapper.java:86) at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38) at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38) at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38) at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38) at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38) at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38) at com.thoughtworks.xstream.mapper.ArrayMapper.realClass(ArrayMapper.java:96) at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38) at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38) at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38) at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38) at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38) at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38) at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38) at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38) at com.thoughtworks.xstream.mapper.CachingMapper.realClass(CachingMapper.java:56) at com.thoughtworks.xstream.core.util.HierarchicalStreams.readClassType(HierarchicalStreams.java:29) at com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter.readItem(AbstractCollectionConverter.java:70) at hudson.util.RobustCollectionConverter.populateCollection(RobustCollectionConverter.java:86) at com.thoughtworks.xstream.converters.collections.CollectionConverter.unmarshal(CollectionConverter.java:61) at hudson.util.RobustCollectionConverter.unmarshal(RobustCollectionConverter.java:77) at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:82) at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:63) at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:76) at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:60) at hudson.util.RobustReflectionConverter.unmarshallField(RobustReflectionConverter.java:265) at hudson.util.RobustReflectionConverter.doUnmarshal(RobustReflectionConverter.java:223) at hudson.util.RobustReflectionConverter.unmarshal(RobustReflectionConverter.java:174) at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:82) at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:63) at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:76) at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:60) at com.thoughtworks.xstream.core.TreeUnmarshaller.start(TreeUnmarshaller.java:137) at com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.unmarshal(AbstractTreeMarshallingStrategy.java:33) at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:923) at hudson.util.XStream2.unmarshal(XStream2.java:70) at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:909) at hudson.XmlFile.unmarshal(XmlFile.java:148) at hudson.model.User.load(User.java:128) at hudson.model.User.<init>(User.java:112) at hudson.model.User.get(User.java:278) at hudson.security.HudsonPrivateSecurityRealm$HudsonUserDetailsService.loadUserByUsername(HudsonPrivateSecurityRealm.java:458) at org.acegisecurity.providers.dao.DaoAuthenticationProvider.retrieveUser(DaoAuthenticationProvider.java:127) at org.acegisecurity.providers.dao.AbstractUserDetailsAuthenticationProvider.authenticate(AbstractUserDetailsAuthenticationProvider.java:119) at org.acegisecurity.providers.ProviderManager.doAuthentication(ProviderManager.java:195) at org.acegisecurity.AbstractAuthenticationManager.authenticate(AbstractAuthenticationManager.java:45) at hudson.plugins.im.IMConnectionProvider.setDescriptor(IMConnectionProvider.java:85) at hudson.plugins.jabber.im.transport.JabberIMConnectionProvider.setDesc(JabberIMConnectionProvider.java:23) at hudson.plugins.jabber.im.transport.JabberPublisherDescriptor.<init>(JabberPublisherDescriptor.java:90) at hudson.plugins.jabber.im.transport.JabberPublisher.<clinit>(JabberPublisher.java:78) at sun.reflect.GeneratedSerializationConstructorAccessor246.newInstance(Unknown Source) at java.lang.reflect.Constructor.newInstance(Constructor.java:513) at com.thoughtworks.xstream.converters.reflection.Sun14ReflectionProvider.newInstance(Sun14ReflectionProvider.java:76) at hudson.util.RobustReflectionConverter.instantiateNewInstance(RobustReflectionConverter.java:306) at hudson.util.RobustReflectionConverter.unmarshal(RobustReflectionConverter.java:173) at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:82) at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:63) at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:76) at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:60) at com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter.readItem(AbstractCollectionConverter.java:71) at hudson.util.CopyOnWriteList$ConverterImpl.unmarshal(CopyOnWriteList.java:186) at hudson.util.DescribableList$ConverterImpl.unmarshal(DescribableList.java:229) at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:82) at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:63) at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:76) at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:60) at hudson.util.RobustReflectionConverter.unmarshallField(RobustReflectionConverter.java:265) at hudson.util.RobustReflectionConverter.doUnmarshal(RobustReflectionConverter.java:223) at hudson.util.RobustReflectionConverter.unmarshal(RobustReflectionConverter.java:174) at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:82) at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:63) at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:76) at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:60) at com.thoughtworks.xstream.core.TreeUnmarshaller.start(TreeUnmarshaller.java:137) at com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.unmarshal(AbstractTreeMarshallingStrategy.java:33) at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:923) at hudson.util.XStream2.unmarshal(XStream2.java:70) at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:909) at com.thoughtworks.xstream.XStream.fromXML(XStream.java:853) at hudson.XmlFile.read(XmlFile.java:126) at hudson.model.Items.load(Items.java:106) at hudson.model.Hudson$12.run(Hudson.java:2110) at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:146) at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:259) at hudson.model.Hudson$3.runTask(Hudson.java:649) at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:187) at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:94)
          Hide
          kutzi kutzi added a comment -

          Seems like you have the continuous integration game plugin installed and it is failing to load after the update.
          Did you change the ci-game plugin or any of its dependencies (FindBugs, Warnings, ...)

          Show
          kutzi kutzi added a comment - Seems like you have the continuous integration game plugin installed and it is failing to load after the update. Did you change the ci-game plugin or any of its dependencies (FindBugs, Warnings, ...)
          Hide
          hopfrog238 hopfrog238 added a comment -

          I did have ci-game installed, but had uninstalled it awhile ago.

          I have removed references to old plugins in hudson's various config XML files, and now no longer have such messages present in the logs. However, the jabber configuration remains absent from the "Manage Hudson" page and each job's configuration page.

          I think the stacktraces I pasted were just a red herring. Also, the bot now joins my chatrooms consistently. My early report of this happening inconsistently had to do with internal network problems we were having. The logs continue to report nothing except success connecting to our jabber server.

          Show
          hopfrog238 hopfrog238 added a comment - I did have ci-game installed, but had uninstalled it awhile ago. I have removed references to old plugins in hudson's various config XML files, and now no longer have such messages present in the logs. However, the jabber configuration remains absent from the "Manage Hudson" page and each job's configuration page. I think the stacktraces I pasted were just a red herring. Also, the bot now joins my chatrooms consistently. My early report of this happening inconsistently had to do with internal network problems we were having. The logs continue to report nothing except success connecting to our jabber server.
          Hide
          kutzi kutzi added a comment -

          There seem to be some references (user properties) to the ci-game left, as you can see here:

          "com.thoughtworks.xstream.mapper.CannotResolveClassException: hudson.plugins.cigame.UserScoreProperty : hudson.plugins.cigame.UserScoreProperty
          at com.thoughtworks.xstream.mapper.DefaultMapper.realClass(DefaultMapper.java:68)"

          Maybe that's the underlying problem, why the config is not shown. I'll check again, why this is not logged in that case.

          Show
          kutzi kutzi added a comment - There seem to be some references (user properties) to the ci-game left, as you can see here: "com.thoughtworks.xstream.mapper.CannotResolveClassException: hudson.plugins.cigame.UserScoreProperty : hudson.plugins.cigame.UserScoreProperty at com.thoughtworks.xstream.mapper.DefaultMapper.realClass(DefaultMapper.java:68)" Maybe that's the underlying problem, why the config is not shown. I'll check again, why this is not logged in that case.
          Hide
          hopfrog238 hopfrog238 added a comment -

          "There seem to be some references (user properties) to the ci-game left, as you can see here:"

          Thinking the same, I removed any such references both from user config.xml files and hudson job config files. I now no longer have such startup warnings. I do see problems upon startup with the "Shelve project" plugin, but those only started happening with hudson's last release.

          Show
          hopfrog238 hopfrog238 added a comment - "There seem to be some references (user properties) to the ci-game left, as you can see here:" Thinking the same, I removed any such references both from user config.xml files and hudson job config files. I now no longer have such startup warnings. I do see problems upon startup with the "Shelve project" plugin, but those only started happening with hudson's last release.
          Hide
          kutzi kutzi added a comment -

          Did it help with the configure page or is that unaffected?

          Show
          kutzi kutzi added a comment - Did it help with the configure page or is that unaffected?
          Hide
          hopfrog238 hopfrog238 added a comment -

          Unaffected.

          I see no configure form at either the server-level ("manage hudson") nor job-level (when creating jobs or changing a job configuration). Those jobs whose configuration included jabber functionality prior to the inputs' disappearance still have functionality (i.e. the bot still announces their failures). Nothing in the logs indicate something is amiss, I just don't see any inputs like "Jabber server URL" where I know they should appear.

          Show
          hopfrog238 hopfrog238 added a comment - Unaffected. I see no configure form at either the server-level ("manage hudson") nor job-level (when creating jobs or changing a job configuration). Those jobs whose configuration included jabber functionality prior to the inputs' disappearance still have functionality (i.e. the bot still announces their failures). Nothing in the logs indicate something is amiss, I just don't see any inputs like "Jabber server URL" where I know they should appear.
          Hide
          kutzi kutzi added a comment -

          Sorry, but I currently cannot imagine how to fix this. Have you really already tried the workaround described in JENKINS-5128 and the configuration vanished again?
          I've heard from other users where this workaround fixed it permanently.

          Show
          kutzi kutzi added a comment - Sorry, but I currently cannot imagine how to fix this. Have you really already tried the workaround described in JENKINS-5128 and the configuration vanished again? I've heard from other users where this workaround fixed it permanently.
          Hide
          cvoronin cvoronin added a comment -

          I have the same problem with 1.358
          When I open the config page of any task, jabber options are missing.

          In browser's errors console (Firefox) I see a lot of errors. It seems these errors are related to some css-problems or javascript-problems.

          kutzi, does your browser's console contain some errors?

          Show
          cvoronin cvoronin added a comment - I have the same problem with 1.358 When I open the config page of any task, jabber options are missing. In browser's errors console (Firefox) I see a lot of errors. It seems these errors are related to some css-problems or javascript-problems. kutzi, does your browser's console contain some errors?
          Hide
          kutzi kutzi added a comment -

          I only see some warnings in the error console and none of it seems to be critical.

          Show
          kutzi kutzi added a comment - I only see some warnings in the error console and none of it seems to be critical.
          Hide
          kutzi kutzi added a comment -

          @cvoronin: what are these errors in the Firefox console? Do they seem to be related to this issue?
          If so, could you attach them to this issue?

          Show
          kutzi kutzi added a comment - @cvoronin: what are these errors in the Firefox console? Do they seem to be related to this issue? If so, could you attach them to this issue?
          Hide
          hopfrog238 hopfrog238 added a comment - - edited

          I'm not 100% sure yet, but I believe the completion of JENKINS-4346 has solved this issue.

          I always got the sense that the disappearing configuration screens had something to do with the connect-at-startup. I'm not familiar with Hudson's plugin architecture, but perhaps the jabber plugin's long initialization somehow made it miss the opportunity to make Hudson aware of its configuration forms?

          I do not believe the JavaScript errors have to do with this error (I have not seen these myself). Further your observation in a comment upstream:

          "I've heard from other users where this workaround fixed it permanently."

          I do not believe is true – the fix would only last until Hudson's next startup.

          I'll observe the behavior over the next few days and report back.

          UPDATE Alas, I was wrong. Looks like I'll be having to remove the config file with each restart again.

          Show
          hopfrog238 hopfrog238 added a comment - - edited I'm not 100% sure yet, but I believe the completion of JENKINS-4346 has solved this issue. I always got the sense that the disappearing configuration screens had something to do with the connect-at-startup. I'm not familiar with Hudson's plugin architecture, but perhaps the jabber plugin's long initialization somehow made it miss the opportunity to make Hudson aware of its configuration forms? I do not believe the JavaScript errors have to do with this error (I have not seen these myself). Further your observation in a comment upstream: "I've heard from other users where this workaround fixed it permanently." I do not believe is true – the fix would only last until Hudson's next startup. I'll observe the behavior over the next few days and report back. UPDATE Alas, I was wrong. Looks like I'll be having to remove the config file with each restart again.
          Hide
          kutzi kutzi added a comment -

          What other plugins do you have installed? Maybe this a interplay with other plugins.
          Also: did you have a look at the HTML source of the config page? Anything suspicious in it?
          Maybe you could attach it here, too?

          Show
          kutzi kutzi added a comment - What other plugins do you have installed? Maybe this a interplay with other plugins. Also: did you have a look at the HTML source of the config page? Anything suspicious in it? Maybe you could attach it here, too?
          Hide
          derekjchoi derekjchoi added a comment - - edited

          I am also getting this error.

          From my perspective, it is definitely nothing to do with plugins as I disabled all of them. I also commented all of the jelly code in global.jelly to see if it is something to do with the view and the section header still doesn't even show up. Digging deeper into it, I narrowed it down to around the super.load() area called in JabberPublisherDescriptor.java. It's either when XStream is trying to unmarshall the XML file or when this command is called: JabberIMConnectionProvider.setDesc(this); The workaround works for me though (i.e. setting enabled = false in the config file) but it is not a solution as we want to push hudson to a prod environment

          It's possible that an exception is being thrown somewhere and not being caught/logged so it makes it much more difficult to debug.

          The funny thing is, I cannot replicate this issue on my local machine which is using glassfish v3 + java 6 on Ubuntu. However, our staging and prod environment is using glassfish v2.1 EE + java 6 on solaris 10 and it is occurring there so I don't know if this is a platform specific problem.

          UPDATE: Nothing to do with XML unmarshalling in Xstream but definitely something within the call to JabberIMConnectionProvider.setDesc(this); I forced enabled = false before the call to "isEnabled()" in the JabberPublisherDescriptor constructor so it would instead call JabberIMConnectionProvider.setDesc(null) and the section reappears correctly. Of course when this is done, we would have to wait until the next retry attempt for the BOT to come online

          UPDATE 2: Seems like something to do with the Authenticator. Commenting line 100 in IMConnectionProvider.java will fix the problem but then will not allow users to send certain commands to the bot:
          //this.authentication = Hudson.getInstance().getSecurityRealm().getSecurityComponents().manager.authenticate(tmp);

          UPDATE 3: Looks like the call to Hudson.getInstance().getSecurityRealm().getSecurityComponents().manager.authenticate(tmp); causes this issue for me (even when I don't assign it to the bean property). Since this goes into Acegisecurity, I will not dive any deeper since I have a decent workaround. If you secured hudson and are having this Jabber section disappearing issue, DO NOT enter anything in "Hudson Username" and "Hudson Password". Alternatively, you can delete the lines that contain <hudsonCiLogin> and <hudsonCiPassword> in hudson.plugins.jabber.im.transport.JabberPublisherDescriptor.xml. )Note that it is not good enough to clear the contents in the above two tags, you have to delete it since the plugin checks for null, not empty string)

          Anyways, by not entering anything, it will not call the above statement to authenticate. I'm not sure what commands are missing for a non-authenticated user but the commands available to me are sufficient (i.e. running adhoc jobs and receiving notification for failed jobs are available). Again, this doesn't happen in all environments so there has to be some issue with the platform itself.

          Show
          derekjchoi derekjchoi added a comment - - edited I am also getting this error. From my perspective, it is definitely nothing to do with plugins as I disabled all of them. I also commented all of the jelly code in global.jelly to see if it is something to do with the view and the section header still doesn't even show up. Digging deeper into it, I narrowed it down to around the super.load() area called in JabberPublisherDescriptor.java. It's either when XStream is trying to unmarshall the XML file or when this command is called: JabberIMConnectionProvider.setDesc(this); The workaround works for me though (i.e. setting enabled = false in the config file) but it is not a solution as we want to push hudson to a prod environment It's possible that an exception is being thrown somewhere and not being caught/logged so it makes it much more difficult to debug. The funny thing is, I cannot replicate this issue on my local machine which is using glassfish v3 + java 6 on Ubuntu. However, our staging and prod environment is using glassfish v2.1 EE + java 6 on solaris 10 and it is occurring there so I don't know if this is a platform specific problem. UPDATE: Nothing to do with XML unmarshalling in Xstream but definitely something within the call to JabberIMConnectionProvider.setDesc(this); I forced enabled = false before the call to "isEnabled()" in the JabberPublisherDescriptor constructor so it would instead call JabberIMConnectionProvider.setDesc(null) and the section reappears correctly. Of course when this is done, we would have to wait until the next retry attempt for the BOT to come online UPDATE 2: Seems like something to do with the Authenticator. Commenting line 100 in IMConnectionProvider.java will fix the problem but then will not allow users to send certain commands to the bot: //this.authentication = Hudson.getInstance().getSecurityRealm().getSecurityComponents().manager.authenticate(tmp); UPDATE 3: Looks like the call to Hudson.getInstance().getSecurityRealm().getSecurityComponents().manager.authenticate(tmp); causes this issue for me (even when I don't assign it to the bean property). Since this goes into Acegisecurity, I will not dive any deeper since I have a decent workaround. If you secured hudson and are having this Jabber section disappearing issue, DO NOT enter anything in "Hudson Username" and "Hudson Password". Alternatively, you can delete the lines that contain <hudsonCiLogin> and <hudsonCiPassword> in hudson.plugins.jabber.im.transport.JabberPublisherDescriptor.xml. )Note that it is not good enough to clear the contents in the above two tags, you have to delete it since the plugin checks for null, not empty string) Anyways, by not entering anything, it will not call the above statement to authenticate. I'm not sure what commands are missing for a non-authenticated user but the commands available to me are sufficient (i.e. running adhoc jobs and receiving notification for failed jobs are available). Again, this doesn't happen in all environments so there has to be some issue with the platform itself.
          Hide
          kutzi kutzi added a comment -

          Great finding Derek!
          I'll try to reproduce it this way.

          Show
          kutzi kutzi added a comment - Great finding Derek! I'll try to reproduce it this way.
          Hide
          kutzi kutzi added a comment -

          Could someone please try the attached plugin snapshots to confirm that they fix the problem?

          Show
          kutzi kutzi added a comment - Could someone please try the attached plugin snapshots to confirm that they fix the problem?
          kutzi kutzi made changes -
          Attachment instant-messaging.hpi [ 19616 ]
          Attachment jabber.hpi [ 19617 ]
          Hide
          scm_issue_link SCM/JIRA link daemon added a comment -

          Code changed in hudson
          User: : kutzi
          Path:
          trunk/hudson/plugins/instant-messaging/src/main/java/hudson/plugins/im/AuthenticationHolder.java
          trunk/hudson/plugins/instant-messaging/src/main/java/hudson/plugins/im/IMConnectionProvider.java
          trunk/hudson/plugins/instant-messaging/src/main/java/hudson/plugins/im/bot/Bot.java
          trunk/hudson/plugins/ircbot/src/main/java/hudson/plugins/ircbot/v2/IRCConnection.java
          trunk/hudson/plugins/ircbot/src/main/java/hudson/plugins/ircbot/v2/IRCConnectionProvider.java
          trunk/hudson/plugins/jabber/src/main/java/hudson/plugins/jabber/im/transport/JabberIMConnection.java
          trunk/hudson/plugins/jabber/src/main/java/hudson/plugins/jabber/im/transport/JabberIMConnectionProvider.java
          http://jenkins-ci.org/commit/33296
          Log:
          JENKINS-5233 JENKINS-5978 Jabber/ircbot section wasn't showing up in global configuration page

          Show
          scm_issue_link SCM/JIRA link daemon added a comment - Code changed in hudson User: : kutzi Path: trunk/hudson/plugins/instant-messaging/src/main/java/hudson/plugins/im/AuthenticationHolder.java trunk/hudson/plugins/instant-messaging/src/main/java/hudson/plugins/im/IMConnectionProvider.java trunk/hudson/plugins/instant-messaging/src/main/java/hudson/plugins/im/bot/Bot.java trunk/hudson/plugins/ircbot/src/main/java/hudson/plugins/ircbot/v2/IRCConnection.java trunk/hudson/plugins/ircbot/src/main/java/hudson/plugins/ircbot/v2/IRCConnectionProvider.java trunk/hudson/plugins/jabber/src/main/java/hudson/plugins/jabber/im/transport/JabberIMConnection.java trunk/hudson/plugins/jabber/src/main/java/hudson/plugins/jabber/im/transport/JabberIMConnectionProvider.java http://jenkins-ci.org/commit/33296 Log: JENKINS-5233 JENKINS-5978 Jabber/ircbot section wasn't showing up in global configuration page
          Hide
          kutzi kutzi added a comment -

          fixed to my best knowledge in Jabber plugin v1.11.
          Please reopen, if not

          Show
          kutzi kutzi added a comment - fixed to my best knowledge in Jabber plugin v1.11. Please reopen, if not
          kutzi kutzi made changes -
          Status Open [ 1 ] Resolved [ 5 ]
          Resolution Fixed [ 1 ]
          Hide
          hopfrog238 hopfrog238 added a comment -

          jabber plugin has been working reliably since this change.

          I'm very pleased this issue is now fixed. Thank you!

          Show
          hopfrog238 hopfrog238 added a comment - jabber plugin has been working reliably since this change. I'm very pleased this issue is now fixed. Thank you!
          rtyler R. Tyler Croy made changes -
          Workflow JNJira [ 135322 ] JNJira + In-Review [ 186955 ]

            People

            • Assignee:
              kutzi kutzi
              Reporter:
              rdohms rdohms
            • Votes:
              3 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: