You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Richard S. Hall (JIRA)" <ji...@apache.org> on 2006/06/22 15:12:30 UTC
[jira] Resolved: (FELIX-84) Problem updating a Provided Service's
registered properties.
[ http://issues.apache.org/jira/browse/FELIX-84?page=all ]
Richard S. Hall resolved FELIX-84:
----------------------------------
Resolution: Fixed
John suggested two places to add synchronized blocks to resolve this issue; these blocks have been committed to the repo. In general, iPOJO code needs to be evaluated more closely with respect to concurrency issues since it has not been a focus up until this point.
> Problem updating a Provided Service's registered properties.
> ------------------------------------------------------------
>
> Key: FELIX-84
> URL: http://issues.apache.org/jira/browse/FELIX-84
> Project: Felix
> Type: Bug
> Components: iPOJO
> Versions: 0.8.0
> Reporter: John Conlon
>
> Experiencing intermittent NPEs when Configuration Admin updates the properties of a registered provided service and m_serviceRegistration is null.
> Have seen this behavior in two variations, both intermittent.
> 1. When a component specifies a ConfigurableProperty in the metadata and the ConfigurationHandler is acting as the ManagedService. Here is the log of this condition:
> INFO [Update Consumer] org.apache.configuration.impl.UpdateConsumer.updateManagedService(UpdateConsumer.java:245) - Invoking updated on managedService=org.apache.felix.ipojo.handlers.configuration.ConfigurationHandler@1d2b01b, with configuration=org.apache.configuration.impl.ConfigurationDictionary [ event.topics=com/verticon/rfid, service.pid=com.verticon.react2, objectclass=[react2Server, apacheServiceConfiguration, top], event.filter=(event.topics=*), cn=react2Server ]
> ERROR [Update Consumer] org.apache.configuration.impl.UpdateConsumer.updateManagedService(UpdateConsumer.java:253) - Failed to update managedService org.apache.felix.ipojo.handlers.configuration.ConfigurationHandler@1d2b01b
> java.lang.NullPointerException
> at org.apache.felix.ipojo.handlers.providedService.ProvidedService.update(ProvidedService.java:271)
> at org.apache.felix.ipojo.handlers.providedService.Property.set(Property.java:116)
> at org.apache.felix.ipojo.handlers.providedService.ProvidedServiceHandler.setterCallback(ProvidedServiceHandler.java:252)
> at org.apache.felix.ipojo.ComponentManager.setterCallback(ComponentManager.java:463)
> at org.apache.felix.ipojo.handlers.configuration.ConfigurationHandler.updated(ConfigurationHandler.java:184)
> at org.apache.configuration.impl.UpdateConsumer.updateManagedService(UpdateConsumer.java:249)
> at org.apache.configuration.impl.UpdateConsumer.update(UpdateConsumer.java:195)
> at org.apache.configuration.impl.UpdateConsumer.configureManagedService(UpdateConsumer.java:283)
> at org.apache.configuration.impl.UpdateConsumer.handleEvent(UpdateConsumer.java:131)
> at org.apache.configuration.impl.UpdateConsumer.run(UpdateConsumer.java:97)
> at java.lang.Thread.run(Thread.java:595)
> 2. The second condition is when a component that has specified a ManagedService as a ProvidedService and this component attempts to directly update a property that was specified as a child property element to the ProvidedService in the metadata.
> INFO [Update Consumer] org.apache.configuration.impl.UpdateConsumer.updateManagedService(UpdateConsumer.java:245) - Invoking updated on managedService=React2EventEmulator, with configuration=org.apache.configuration.impl.ConfigurationDictionary [ service.pid=com.verticon.react2.emulator, periodseconds=30, objectclass=[react2Emulator, apacheServiceConfiguration, top], delayseconds=6, cn=react2Emulator, eventtopic=com/verticon/rfid/MOVEMENT ]
> ERROR [Update Consumer] org.apache.configuration.impl.UpdateConsumer.updateManagedService(UpdateConsumer.java:253) - Failed to update managedService React2EventEmulator
> java.lang.NullPointerException
> at org.apache.felix.ipojo.handlers.providedService.ProvidedService.update(ProvidedService.java:271)
> at org.apache.felix.ipojo.handlers.providedService.Property.set(Property.java:116)
> at org.apache.felix.ipojo.handlers.providedService.ProvidedServiceHandler.setterCallback(ProvidedServiceHandler.java:252)
> at org.apache.felix.ipojo.ComponentManager.setterCallback(ComponentManager.java:463)
> at com.verticon.react2.emulator.Emulator._seteventTopic(Emulator.java)
> at com.verticon.react2.emulator.Emulator.loadTopicProperty(Emulator.java:165)
> at com.verticon.react2.emulator.Emulator.loadConfigurationProperties(Emulator.java:153)
> at com.verticon.react2.emulator.Emulator.updated(Emulator.java:90)
> at org.apache.configuration.impl.UpdateConsumer.updateManagedService(UpdateConsumer.java:249)
> at org.apache.configuration.impl.UpdateConsumer.update(UpdateConsumer.java:195)
> at org.apache.configuration.impl.UpdateConsumer.configureManagedService(UpdateConsumer.java:283)
> at org.apache.configuration.impl.UpdateConsumer.handleEvent(UpdateConsumer.java:131)
> at org.apache.configuration.impl.UpdateConsumer.run(UpdateConsumer.java:97)
> at java.lang.Thread.run(Thread.java:595)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira