[jira] [Commented] (FELIX-3469) Type mismatch JS error using the memoryusage plugin

2012-04-19 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3469?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13257381#comment-13257381
 ] 

Felix Meschberger commented on FELIX-3469:
--

Apparently the problem occurs in this code at the end of the createElement 
function:

for (var i=0; i  children.length; i++) {
  element.appendChild( children[i] );
}

Looks like the children.length method reports a wrong size and thus at the end 
an non-existing child should be added. The fix is to simply guard against 
non-existing array entry.

 Type mismatch JS error using the memoryusage plugin
 ---

 Key: FELIX-3469
 URL: https://issues.apache.org/jira/browse/FELIX-3469
 Project: Felix
  Issue Type: Bug
  Components: Web Console
Affects Versions: webconsole-3.1.2
 Environment: Microsoft IE 8
Reporter: Felix Meschberger
Assignee: Felix Meschberger
 Fix For: webconsole-3.4.0


 When showing the Memory Usage page, IE8 reports a type mismatch error in the 
 support.js script.
 For example when clicking the Heap Dump button:
Result: Type mismatch error in 
 http://localhost:4502/system/console/res/lib/support.js (line: 257, char: 4)
Expected: no error, GC and heap dump to execute
 Also the detail information is not properly listed.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3471) Support Schema validation for MetaData XML documents

2012-04-19 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3471?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13257475#comment-13257475
 ] 

Felix Meschberger commented on FELIX-3471:
--

That would be quite heavy to do relying on at least one 3rd party library.

What would be the benefit ?

 Support Schema validation for MetaData XML documents
 

 Key: FELIX-3471
 URL: https://issues.apache.org/jira/browse/FELIX-3471
 Project: Felix
  Issue Type: Bug
  Components: Metatype Service
Affects Versions: metatype-1.0.4
Reporter: Alexandre Castro Alves

 MetaData XML documents are not being W3C Schema-validated.
 Provide option for doing so.
 Thanks
 Alex

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3468) Restarting the framework from the web console does not work

2012-04-18 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3468?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13256280#comment-13256280
 ] 

Felix Meschberger commented on FELIX-3468:
--

Yes, the only issue with the Web Console is, that it may not be appropriate to 
have such functionality. Other than that, this is what's being done:

   Restart: BundleContext.getBundle(0).update();
   Shutdown: BundleContext.getBundle(0).stop();

In the Sling Launcher we overwrite the Felix class to implement our own update 
method and to restart the framework in a fresh class loader. This works 
perfectly but has the drawback of not being portable

 Restarting the framework from the web console does not work
 ---

 Key: FELIX-3468
 URL: https://issues.apache.org/jira/browse/FELIX-3468
 Project: Felix
  Issue Type: Bug
  Components: Karaf
Affects Versions: webconsole-3.1.8
Reporter: Hugh Rodgers

 I am running Karaf v2.2.5 (which uses felix web console v3.1.8) on Windows 7. 
 Once I start karaf (using the karaf.bat script), I go to the web console and 
 click on the System Information tab. I then click the Restart button and Ok 
 in its popup. I see in the Karaf command line console that Karaf shuts down 
 and restarts. When I click in the command line console and press return (to 
 get a prompt), the command line console window disappears and Karaf shuts 
 down.
 When I try this with Karaf v2.2.5 and only install the webconsole feature, 
 when I click Restart, the Karaf command line console disappears and Karaf 
 shuts down (never comes back up).
 I have reproduced this issue with Karaf v2.2.5 and only loading the following 
 bundles:
 feature name=saxon version=${saxon.bundle.plugin}
 
 bundlemvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.saxon/${saxon.bundle.plugin}/bundle
   /feature
  
   feature name=commons-io version=${commons-io.version}
 bundlemvn:commons-io/commons-io/${commons-io.version}/bundle
   /feature
  
   feature name=slf4j-ext version=${org.slf4j-ext.version}
 bundlemvn:org.slf4j/slf4j-ext/${org.slf4j-ext.version}/bundle
   /feature
  
   feature name=ops4j-base-lang version=${org.ops4j-base-lang}
 bundle 
 start-level='70'mvn:org.ops4j.base/ops4j-base-lang/${org.ops4j-base-lang}/bundle
   /feature
  
   feature name=ops4j-swissbox version=${org.ops4j.pax.swissbox.version}
   feature version=${org.ops4j-base-lang}ops4j-base-lang/feature
 bundle 
 start-level='70'mvn:org.ops4j.pax.swissbox/pax-swissbox-lifecycle/${org.ops4j.pax.swissbox.version}/bundle
 bundle 
 start-level='70'mvn:org.ops4j.pax.swissbox/pax-swissbox-optional-jcl/${org.ops4j.pax.swissbox.version}/bundle
 bundle 
 start-level='70'mvn:org.ops4j.pax.swissbox/pax-swissbox-extender/${org.ops4j.pax.swissbox.version}/bundle
   /feature
 The dev:restart command works from the Karaf command line console, and it 
 works if I issue it from a second terminal window using the Karaf client.bat 
 script.
 At this point, I have yet to see the Restart button in the web console work 
 properly.
 Thanks. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3456) Component ignores required static service addition when in Activating state

2012-04-14 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3456?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13254080#comment-13254080
 ] 

Felix Meschberger commented on FELIX-3456:
--

 A colleague tried a completely asynchronous model for service events in scr 
 and although start seemed to work,
 stopping resulted in a lot of work on stopped bundles and component objects

Been there done that ... SCR was fully asynchronous at one point in time.

Stopping failed miserably because services have been gone when the component 
was about to be stopped and expected statically bound services to still be 
available.

Startup worked correctly and the spec does not favor one or the other (I think 
there is nothing about synchronicity in the spec). I converted to synchronous 
startup to have better control during system startup (namely to have all 
components activated when the FRAMEWORK_STARTED event is fired by the 
framework). In fact, it is quite nice to have all components fuly handled once 
the bundle's STARTED or STOPPED event is fired. (This is one of my concerns 
with blueprint which is asynchronous and makes it hard to reason about system 
state).

Overall and in hindsight it looks like synchronous startup is preferable to 
asynchronous startup.

BTW: The last time I checked, Equinox DS was also fully synchronous.

 We might have an internal and external state.

In your proposal thread 2 waits for the lock and thus thread 1 and thread 2 are 
susceptive to deadlocks. Particularly if you take another service into account 
 The reason for this is, that when a service is supplied we are called back 
from the framework and thus have to be extremely carefull since the framework 
may still hold locks (for example bundle locks during bundle start)

 Component ignores required static service addition when in Activating state
 ---

 Key: FELIX-3456
 URL: https://issues.apache.org/jira/browse/FELIX-3456
 Project: Felix
  Issue Type: Bug
  Components: Declarative Services (SCR)
Affects Versions:  scr-1.6.0
 Environment: Using org.apache.felix.scr svn rev 1298268 on Mac
Reporter: Richard Ellis
Priority: Critical
 Attachments: FELIX-3456-1.diff


 I have a component with two required static service references (A and B). In 
 my scenario A and B are registered nearly simultaneously on different threads 
 and this causes the DependencyManager to ignore the addition of one of these 
 two services (B). This causes the component to remain unsatisfied and never 
 activate, since the service that was ignored is not re-registered at any time 
 and nothing subsequently causes the component to re-activate.
 This happens as follows:
 12:30:59:317 Thread 1 - Registers Service B/257
 12:30:59:320 Thread 2 - Registers Service A/258
 12:30:59:320 Thread 2 - Dependency Manager: Adding Service A/258
 12:30:59:321 Thread 2 - Dependency Manager: Service serviceA registered, 
 activate component
 12:30:59:321 Thread 2 - State transition : Unsatisfied - Activating
 12:30:59:321 Thread 2 - Activating component
 12:30:59:321 Thread 1 - Dependency Manager: Adding Service B/257
 12:30:59:321 Thread 2 - Dependency not satisfied: serviceB
 12:30:59:321 Thread 1 - Dependency Manager: Added service serviceB is ignored 
 for static reference --- I believe we end up here because Thread 2 has moved 
 the component from Unsatisfied to Activating and the reference is a static 
 reference
 12:30:59:321 Thread 2 - Not all dependencies satisified, cannot activate
 12:30:59:321 Thread 2 - State transition : Activating - Unsatisfied
 Because the addition of Service B has been ignored and serviceB is a required 
 dependency my component then never activates even though my reqiured service 
 is present.
 There is a comment in DependencyManager#serviceAdded method:
 // FELIX-1413: if the dependency is static and the component is
 // satisfied (active) added services are not considered until
 // the component is reactivated for other reasons.
 This suggests that the static service should only be ignored if the component 
 is satisfied(active), which would be correct, but in this case the component 
 is only activating (and will fail to activate because one of the two 
 dependencies is not yet satisfied) and there is no check of state at this 
 time.
 A simple fix would be to check the state of the component as well as if the 
 service is static e.g.
 replace if ( m_dependencyMetadata.isStatic() )
 with if ( m_dependencyMetadata.isStatic()  m_componentManager.getState() == 
 AbstractComponentManager.STATE_ACTIVE )
 This is an easy fix, but I guess may leave a small window where a static 
 reference could get replaced while a component was still activating if 
 another instance of the same 

[jira] [Commented] (FELIX-3456) Component ignores required static service addition when in Activating state

2012-04-13 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3456?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13253605#comment-13253605
 ] 

Felix Meschberger commented on FELIX-3456:
--

Thanks for reporting. This is in fact an issue.

I am not against replacing the size int by an AtomicInteger; in the interest of 
concurrency stability this might make sense. (though this might prevent SCR 
from being used in pre-Java 5 setups; we still consider this requirement valid 
for SCR)

But I am not convinced with the state lock. This going to be dangerous for 
deadlocks because during activate and deactive services may be registered or 
unregistered, which may cause deadlocks: We currently have one single situation 
where we synchronize (creation of delayed component service instances) and we 
realize occasional deadlocks.

Thinking the other way around: We have some transient states during which 
events may happen which may get lost. One such transient state is the 
activating state. And this is such an event which may get lost. Another event 
may be a configuration update.

I have been contemplating some kind of event queuing and some way of processing 
such a queue when leaving the transient state.

In the concrete example:

T1 registers Service A, causes component into the ACTIVATING state
T2 registers Service B, enqueues event since component is ACTIVATING
T1 terminates ACTIVATING, checks queue and handles event.

The queue could be as simple as a list of Runnable on each component manager.

 Component ignores required static service addition when in Activating state
 ---

 Key: FELIX-3456
 URL: https://issues.apache.org/jira/browse/FELIX-3456
 Project: Felix
  Issue Type: Bug
  Components: Declarative Services (SCR)
Affects Versions:  scr-1.6.0
 Environment: Using org.apache.felix.scr svn rev 1298268 on Mac
Reporter: Richard Ellis
Priority: Critical
 Attachments: FELIX-3456-1.diff


 I have a component with two required static service references (A and B). In 
 my scenario A and B are registered nearly simultaneously on different threads 
 and this causes the DependencyManager to ignore the addition of one of these 
 two services (B). This causes the component to remain unsatisfied and never 
 activate, since the service that was ignored is not re-registered at any time 
 and nothing subsequently causes the component to re-activate.
 This happens as follows:
 12:30:59:317 Thread 1 - Registers Service B/257
 12:30:59:320 Thread 2 - Registers Service A/258
 12:30:59:320 Thread 2 - Dependency Manager: Adding Service A/258
 12:30:59:321 Thread 2 - Dependency Manager: Service serviceA registered, 
 activate component
 12:30:59:321 Thread 2 - State transition : Unsatisfied - Activating
 12:30:59:321 Thread 2 - Activating component
 12:30:59:321 Thread 1 - Dependency Manager: Adding Service B/257
 12:30:59:321 Thread 2 - Dependency not satisfied: serviceB
 12:30:59:321 Thread 1 - Dependency Manager: Added service serviceB is ignored 
 for static reference --- I believe we end up here because Thread 2 has moved 
 the component from Unsatisfied to Activating and the reference is a static 
 reference
 12:30:59:321 Thread 2 - Not all dependencies satisified, cannot activate
 12:30:59:321 Thread 2 - State transition : Activating - Unsatisfied
 Because the addition of Service B has been ignored and serviceB is a required 
 dependency my component then never activates even though my reqiured service 
 is present.
 There is a comment in DependencyManager#serviceAdded method:
 // FELIX-1413: if the dependency is static and the component is
 // satisfied (active) added services are not considered until
 // the component is reactivated for other reasons.
 This suggests that the static service should only be ignored if the component 
 is satisfied(active), which would be correct, but in this case the component 
 is only activating (and will fail to activate because one of the two 
 dependencies is not yet satisfied) and there is no check of state at this 
 time.
 A simple fix would be to check the state of the component as well as if the 
 service is static e.g.
 replace if ( m_dependencyMetadata.isStatic() )
 with if ( m_dependencyMetadata.isStatic()  m_componentManager.getState() == 
 AbstractComponentManager.STATE_ACTIVE )
 This is an easy fix, but I guess may leave a small window where a static 
 reference could get replaced while a component was still activating if 
 another instance of the same service was registered on a different thread.
 There are other fixes that could be done by synchronizing more around service 
 additions.
 Is anyone willing to make this fix or does anyone have any thoughts about 
 this issue?
 Thanks

--
This message is automatically 

[jira] [Commented] (FELIX-3406) Localization in Web Console doesn't work anymore

2012-04-05 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3406?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13247203#comment-13247203
 ] 

Felix Meschberger commented on FELIX-3406:
--

Looks like the files are translated (in target/classes/...) but are packed in 
the final JAR file untranslated ... So the webconsole reads the original 
UTF-8 encoded files as if it would be ISO-8859-1 and thus, of course, cannot 
render properly.

 Localization in Web Console doesn't work anymore
 

 Key: FELIX-3406
 URL: https://issues.apache.org/jira/browse/FELIX-3406
 Project: Felix
  Issue Type: Bug
  Components: Web Console
Affects Versions: webconsole-3.4.0
Reporter: Valentin Valchev
Assignee: Felix Meschberger
Priority: Critical
 Fix For: webconsole-3.4.0


 Seems that native2ascii task doesn't work anymore and this is with the latest 
 SVN snapshot. (I'm using Apache Maven 3.0.3 to build)
 So, when UTF-8 characters are rendered on screen they appear like random 
 characters. This makes the web console totally unusable in Bulgarian and 
 Russian languages.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-2163) The view for a single bundle uses the same multi-column view than for the bundles list, which is inapropriate

2012-04-05 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-2163?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13247231#comment-13247231
 ] 

Felix Meschberger commented on FELIX-2163:
--

Popup would definitely be an option.

Nevertheless we still would want to support something like 
http://localhost/system/console/bundles/10.json to just return the JSON 
formatted info for Bundle 10.

 The view for a single bundle uses the same multi-column view than for the 
 bundles list, which is inapropriate
 -

 Key: FELIX-2163
 URL: https://issues.apache.org/jira/browse/FELIX-2163
 Project: Felix
  Issue Type: Improvement
  Components: Web Console
Reporter: Guillaume Nodet

 There's no real point in presenting the data in a multicolumn view, where you 
 have only one line with one huge cell and several cells which are mostly 
 redundant.  I think we should have a slightly different view for viewing a 
 single bundle.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3442) native2ascii doesn't work for DS plugin

2012-04-05 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13247240#comment-13247240
 ] 

Felix Meschberger commented on FELIX-3442:
--

Same problem as with FELIX-3406: The bundle plugin includes the unprocessed 
resources. To have the processed resources, they must be explicitly included.

 native2ascii doesn't work for DS plugin
 ---

 Key: FELIX-3442
 URL: https://issues.apache.org/jira/browse/FELIX-3442
 Project: Felix
  Issue Type: Bug
  Components: Web Console
Affects Versions: webconsole-ds-plugin-1.0.0
Reporter: Valentin Valchev
Assignee: Felix Meschberger
 Fix For: webconsole-ds-plugin-1.0.0




--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3442) native2ascii doesn't work for DS plugin

2012-04-05 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13247243#comment-13247243
 ] 

Felix Meschberger commented on FELIX-3442:
--

Explicit inclusion of the processed language files with the Include-Resources 
directive in Rev. 1309872 (and tested).

Sorry Valentin, did realize only after the fact, that you already fixed this by 
adding another maven resource element. IMHO this is a problem of the bundle 
plugin which should be solved by configuration of the bundle plugin.

 native2ascii doesn't work for DS plugin
 ---

 Key: FELIX-3442
 URL: https://issues.apache.org/jira/browse/FELIX-3442
 Project: Felix
  Issue Type: Bug
  Components: Web Console
Affects Versions: webconsole-ds-plugin-1.0.0
Reporter: Valentin Valchev
Assignee: Felix Meschberger
 Fix For: webconsole-ds-plugin-1.0.0




--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3410) ImmediateComponentManager should use any non-ignored configuration to try to activate a component.

2012-03-30 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3410?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13242215#comment-13242215
 ] 

Felix Meschberger commented on FELIX-3410:
--

Oh, quite right. I missed that detail. Thanks for providing the patch.

 ImmediateComponentManager should use any non-ignored configuration to try to 
 activate a component.
 --

 Key: FELIX-3410
 URL: https://issues.apache.org/jira/browse/FELIX-3410
 Project: Felix
  Issue Type: Bug
  Components: Declarative Services (SCR)
Affects Versions: scr-1.6.2
Reporter: David Jencks
 Attachments: FELIX-3410.diff


 ImmediateComponentManager.reconfigure only tries to activate an unsatisfied 
 component if the configuration is require.  However, if configuration is 
 optional (i.e. not ignored) it could still change target properties and make 
 the component satisfied so it can be activated.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3406) Localization in Web Console doesn't work anymore

2012-03-28 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3406?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13240440#comment-13240440
 ] 

Felix Meschberger commented on FELIX-3406:
--

This could be related to my movement of the files. Has there been something 
failing due to that ? Or is there some UTF-8 setting missing ?

 Localization in Web Console doesn't work anymore
 

 Key: FELIX-3406
 URL: https://issues.apache.org/jira/browse/FELIX-3406
 Project: Felix
  Issue Type: Bug
  Components: Web Console
Affects Versions: webconsole-3.2.0
Reporter: Valentin Valchev
Assignee: Felix Meschberger
Priority: Critical
 Fix For: webconsole-3.2.2


 Seems that native2ascii task doesn't work anymore and this is with the latest 
 SVN snapshot. (I'm using Apache Maven 3.0.3 to build)
 So, when UTF-8 characters are rendered on screen they appear like random 
 characters. This makes the web console totally unusable in Bulgarian and 
 Russian languages.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3268) Cannot build webconsole and webconsole-plugins with JDK 7

2012-03-26 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3268?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13238511#comment-13238511
 ] 

Felix Meschberger commented on FELIX-3268:
--

Moved the resources to src/main/resources in Rev. 1305413 and updated the event 
plugin to use 1.0-beta-1 of the native2ascii plugin in Rev. 1305415

 Cannot build webconsole and webconsole-plugins with JDK 7
 -

 Key: FELIX-3268
 URL: https://issues.apache.org/jira/browse/FELIX-3268
 Project: Felix
  Issue Type: Bug
  Components: Web Console
 Environment: Debian unstable x86_64, JDK 7 from 
 http://jdk7.java.net/download.html, Maven 3.0.3
Reporter: Lionel Debroux
Assignee: Felix Meschberger
  Labels: patch
 Fix For: webconsole-upnp-plugin-1.0.2, 
 webconsole-shell-plugin-1.0.0, webconsole-obr-plugin-1.0.0, 
 webconsole-ds-plugin-1.0.0, webconsole-deployment-admin-plugin-1.0.0, 
 webconsole-3.2.0, webconsole-event-plugin-1.0.4


 A search in JIRA returned no match for native2ascii and no relevant match 
 for native, so I'm creating an issue.
 When trying to build Felix SVN HEAD with JDK 7, the build process stops when 
 it fails to invoke native2ascii in webconsole.
 It seems that there was a change between JDK 6 and JDK 7, and the 1.0-alpha-1 
 version of org.codehaus.mojo:native2ascii-maven-plugin in multiple POMs 
 cannot handle it. However, version 1.0-beta-1 (I obtained that version number 
 by removing the version parameter entirely) can cope with JDK 7.
 The patch below fixes the build problem in webconsole  webconsole-plugins:
 diff --git a/webconsole-plugins/deppack/pom.xml 
 b/webconsole-plugins/deppack/pom.xml
 index 0c764e6..e576a57 100644
 --- a/webconsole-plugins/deppack/pom.xml
 +++ b/webconsole-plugins/deppack/pom.xml
 @@ -40,7 +40,7 @@
   plugin
   groupIdorg.codehaus.mojo/groupId
   
 artifactIdnative2ascii-maven-plugin/artifactId
 - version1.0-alpha-1/version
 + version1.0-beta-1/version
   executions
   execution
   goals
 diff --git a/webconsole-plugins/ds/pom.xml b/webconsole-plugins/ds/pom.xml
 index 40a3224..338f306 100644
 --- a/webconsole-plugins/ds/pom.xml
 +++ b/webconsole-plugins/ds/pom.xml
 @@ -40,7 +40,7 @@
  plugin
  groupIdorg.codehaus.mojo/groupId
  artifactIdnative2ascii-maven-plugin/artifactId
 -version1.0-alpha-1/version
 +version1.0-beta-1/version
  executions
  execution
  goals
 diff --git a/webconsole-plugins/event/pom.xml 
 b/webconsole-plugins/event/pom.xml
 index b257032..2375eab 100644
 --- a/webconsole-plugins/event/pom.xml
 +++ b/webconsole-plugins/event/pom.xml
 @@ -48,7 +48,7 @@
  plugin
  groupIdorg.codehaus.mojo/groupId
  artifactIdnative2ascii-maven-plugin/artifactId
 -version1.0-alpha-1/version
 +version1.0-beta-1/version
  executions
  execution
  goals
 diff --git a/webconsole-plugins/obr/pom.xml b/webconsole-plugins/obr/pom.xml
 index c4a88f2..3854ca3 100644
 --- a/webconsole-plugins/obr/pom.xml
 +++ b/webconsole-plugins/obr/pom.xml
 @@ -40,7 +40,7 @@
   plugin
   groupIdorg.codehaus.mojo/groupId
   
 artifactIdnative2ascii-maven-plugin/artifactId
 - version1.0-alpha-1/version
 + version1.0-beta-1/version
   executions
   execution
   goals
 diff --git a/webconsole-plugins/shell/pom.xml 
 b/webconsole-plugins/shell/pom.xml
 index 661d3cd..7f1b428 100644
 --- a/webconsole-plugins/shell/pom.xml
 +++ b/webconsole-plugins/shell/pom.xml
 @@ -40,7 +40,7 @@
   plugin
   groupIdorg.codehaus.mojo/groupId
   
 artifactIdnative2ascii-maven-plugin/artifactId
 - version1.0-alpha-1/version
 + version1.0-beta-1/version
   executions
   execution
   goals
 diff --git a/webconsole-plugins/upnp/pom.xml b/webconsole-plugins/upnp/pom.xml
 index 413da08..bb091a4 100644
 --- a/webconsole-plugins/upnp/pom.xml
 +++ b/webconsole-plugins/upnp/pom.xml
 @@ -48,7 

[jira] [Commented] (FELIX-3316) Log plugin should provide more detailed exception column

2012-03-26 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3316?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13238746#comment-13238746
 ] 

Felix Meschberger commented on FELIX-3316:
--

Added german translations in Rev. 1305523

In addition I removed the bottom status line (we only have the status line at 
the top) and made sure the select lists are nicely styled.

 Log plugin should provide more detailed exception column
 

 Key: FELIX-3316
 URL: https://issues.apache.org/jira/browse/FELIX-3316
 Project: Felix
  Issue Type: Improvement
  Components: Web Console
Affects Versions: webconsole-3.1.8
Reporter: Valentin Valchev
Assignee: Felix Meschberger
 Fix For: webconsole-3.2.0


 Now in the Log plugin we have an Exception column, that shows only a brief 
 message description. We should add an option, to enable full stack-trace 
 display. This could be particularly useful for debugging.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3399) Configuration Printers which do not implement the ConfigurationPrinter interface cannot be defined in inner classes

2012-03-26 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3399?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13238753#comment-13238753
 ] 

Felix Meschberger commented on FELIX-3399:
--

Can you provide a sample exhibiting this issue ? Thanks.

 Configuration Printers which do not implement the ConfigurationPrinter 
 interface cannot be defined in inner classes
 ---

 Key: FELIX-3399
 URL: https://issues.apache.org/jira/browse/FELIX-3399
 Project: Felix
  Issue Type: Bug
  Components: Web Console
Affects Versions: webconsole-3.1.8
Reporter: Justin Edelson

 FELIX-2649 added support for Configuration Printers which do not explicitly 
 implement the ConfigurationPrinter interface. However, I've discovered that 
 if the Configuration Printer service is defined as an inner class, this does 
 not work. The printer is displayed in the Configuration Status plugin with 
 the correct title, but the content is not rendered (and the 
 printConfiguration method is never invoked). No error message is logged.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3377) Allow a component to update its own service properties

2012-03-12 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3377?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13227350#comment-13227350
 ] 

Felix Meschberger commented on FELIX-3377:
--

 ExtComponentContext.setServiceProperties and the return Dictionary value from 
 activate and update
 replace the service registration properties rather than update the values 
 calculated by some other method.

Yes

 calling ExtComponentContext.setServiceProperties from within an activate or 
 modify method would
 have the same effect as returning the service properties from the method

Yes. If both are done -- calling setServiceProperties and return Dictionary, 
the latter would overwrite/replace the former.

 In order to avoid arguments over whether config admin or the component sets 
 the service properties,
 the update method would recalculate the service properties when config admin 
 changes them and
 reset what it wants either through a return value or calling 
 ExtComponentContext.setServiceProperties. 

IMHO configuration admin properties are primarily to configure the component 
and are also (kind of secondarily) used to set the service properties. Both 
make sense, of course. But if we think a component should be able to set its 
own service properties, it should probably be able to do so completely but 
without disturbing its own configuration.

Thus:

#1 Component propertiesa are default configuration for the component
#2 Config Admin enhances, extends, overwrites default configuration for the 
component
#3 By default this set of properties is used as service properties (except 
private properties starting with .)
#4 The component may overwrite the properties from #3 by returning a Dictionary 
from activate or modified or by calling setServiceProperties

In practice, I would assume a component to take the properties received from 
the DS runtime (either ComponentContext.getProperties or the Map passed to the 
activate or modified method) modify it and use the result to call setProperties 
or return from activate.

I might be conceivable, though to be slightly strange in the API:

(1) activate and modified may return MapString, Object for the service 
properties. This would be inline with the DS 1.1 option to get the 
configuration passed as a Map into the methods
(2) setServiceProperties would take a DictionaryString, Object for the 
service properties. This would be inline with the original 
ComponentContext.getProperties method.

WDYT ?

 Allow a component to update its own service properties
 --

 Key: FELIX-3377
 URL: https://issues.apache.org/jira/browse/FELIX-3377
 Project: Felix
  Issue Type: Improvement
  Components: Declarative Services (SCR)
Affects Versions:  scr-1.6.0
Reporter: David Jencks
 Attachments: FELIX-3377-2.diff, FELIX-3377.diff


 If you just register a service in code, you can give the ServiceRegistration 
 to the service and it can update its service properties to reflect what it 
 can discover about its environment.  This proposes that services registered 
 through DS should be able to do this too, by calling an 
 updateProperties(Dictionary) method on the ComponentContext.  (Since we'd 
 need a spec update to add the method to ComponentContext, I added a new 
 interface that ComponentContextImpl implements).
 Right now a service could get Config Admin and modify the properties there, 
 but then (a) the update method is called even though the component itself 
 initiated the changes and (b) the new property values are persisted which is 
 presumably not desired.
 According to the spec config admin properties override default property 
 values specified in the component xml.  I think that in order to reduce 
 confusion, once a property has been set through config admin it should not be 
 possible to update it through this update method.  This also makes 
 implementing this idea easy.
 IIUC this idea does not make sense for component factories.
 This idea was originally suggested by Erin Schnabel in OSGI bug 2250.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3377) Allow a component to update its own service properties

2012-03-09 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3377?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13226146#comment-13226146
 ] 

Felix Meschberger commented on FELIX-3377:
--

Thinking about it, I would like to refine your original proposal as follows:

(1) New ExtCompontentContext.setServiceProperties(Dictionary)
This replaces the set of properties derived from the component properties,
configuration admin properties, and from the ComponentFactory.newInstance
call and is only used to set the component's service registration property

(2) Allow the activate and modify methods to return Dictionary
If a Dictionary is returned, the respective properties are used for
subsequent service registration (Dictionary returned from activate for
an immediate component) or to update the service registration (Dictionary
returned from modify or from activate for a delayed or service factory
component).

The first method is inline with DS 1.0 tradition, where the ComponentContext 
provides access to framework related functionality (BundleContext etc.) The 
second method is inline with the DS 1.1 tradition to require as minimal OSGi 
API involvement as possible.

Any private properties (starting with a .) are filtered out of the Dictionary 
in both cases before using the properties for service registration.

The ExtComponent method thus only influences the service registration but not 
an configuration supplied to the activate or modified method.

Also updated OSGi Bug 2250 with this proposal. 

 Allow a component to update its own service properties
 --

 Key: FELIX-3377
 URL: https://issues.apache.org/jira/browse/FELIX-3377
 Project: Felix
  Issue Type: Improvement
  Components: Declarative Services (SCR)
Affects Versions:  scr-1.6.0
Reporter: David Jencks
 Attachments: FELIX-3377-2.diff, FELIX-3377.diff


 If you just register a service in code, you can give the ServiceRegistration 
 to the service and it can update its service properties to reflect what it 
 can discover about its environment.  This proposes that services registered 
 through DS should be able to do this too, by calling an 
 updateProperties(Dictionary) method on the ComponentContext.  (Since we'd 
 need a spec update to add the method to ComponentContext, I added a new 
 interface that ComponentContextImpl implements).
 Right now a service could get Config Admin and modify the properties there, 
 but then (a) the update method is called even though the component itself 
 initiated the changes and (b) the new property values are persisted which is 
 presumably not desired.
 According to the spec config admin properties override default property 
 values specified in the component xml.  I think that in order to reduce 
 confusion, once a property has been set through config admin it should not be 
 possible to update it through this update method.  This also makes 
 implementing this idea easy.
 IIUC this idea does not make sense for component factories.
 This idea was originally suggested by Erin Schnabel in OSGI bug 2250.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-2292) Uprage to jetty 7.0 (org.eclipse.jetty 7.0.2v20100331)

2012-03-08 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-2292?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13225284#comment-13225284
 ] 

Felix Meschberger commented on FELIX-2292:
--

Yes, but lack of time, you know ;-)

You might give it a try..

 Uprage to jetty 7.0 (org.eclipse.jetty 7.0.2v20100331)
 --

 Key: FELIX-2292
 URL: https://issues.apache.org/jira/browse/FELIX-2292
 Project: Felix
  Issue Type: Improvement
  Components: HTTP Service
Reporter: Jonathan Bardin
 Fix For: http-2.2.2

 Attachments: jetty7.patch, jetty7GoodFormat.patch


 Hi, 
 This is a small improvement of the Http Service in order to use jetty 7.0.2 
 (org.eclipse.jetty 7.0.2v20100331).
 The patch is following.
 Regards, 
 Jonathan

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3377) Allow a component to update its own service properties

2012-03-07 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3377?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13224627#comment-13224627
 ] 

Felix Meschberger commented on FELIX-3377:
--

This makes sense to me.

Some remarks:
(1) I would probably name the new package o.a.f.scr.component and export it 
with a mandatory attribute (as we do with other provisional API we export)
(2) I would rather call the MutablePropertiesComponentContext interface 
ExtComponentContext
(3) The JavaDoc for the updateProperties method should clearly indicate (as you 
propose) that the properties from the component descriptor are to be amended 
and/or updated and that these properties are still subject to being overwritten 
by configuration from Configuration Admin. This would imply that existing 
properties from the component descriptors cannot be removed, right ?

Have you already submitted an OSGi bug proposing this enhancement in a future 
spec ?

 Allow a component to update its own service properties
 --

 Key: FELIX-3377
 URL: https://issues.apache.org/jira/browse/FELIX-3377
 Project: Felix
  Issue Type: Improvement
  Components: Declarative Services (SCR)
Affects Versions:  scr-1.6.0
Reporter: David Jencks
 Attachments: FELIX-3377.diff


 If you just register a service in code, you can give the ServiceRegistration 
 to the service and it can update its service properties to reflect what it 
 can discover about its environment.  This proposes that services registered 
 through DS should be able to do this too, by calling an 
 updateProperties(Dictionary) method on the ComponentContext.  (Since we'd 
 need a spec update to add the method to ComponentContext, I added a new 
 interface that ComponentContextImpl implements).
 Right now a service could get Config Admin and modify the properties there, 
 but then (a) the update method is called even though the component itself 
 initiated the changes and (b) the new property values are persisted which is 
 presumably not desired.
 According to the spec config admin properties override default property 
 values specified in the component xml.  I think that in order to reduce 
 confusion, once a property has been set through config admin it should not be 
 possible to update it through this update method.  This also makes 
 implementing this idea easy.
 IIUC this idea does not make sense for component factories.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3345) Concurrency problems in SCR

2012-03-07 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3345?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13224978#comment-13224978
 ] 

Felix Meschberger commented on FELIX-3345:
--

Thanks for providing the patches. As indicated in [1] I have applied the 
patches as follows:

   FELIX-3345-2.diff in Rev. 1298266
   FELIX-3345-5.diff in Rev. 1298267

Patch FELIX-3345-6.diff referred to in the message seems to be missing. Doesn't 
matter, I'd like to apply the comprehensive test patch as of FELIX-3371 anyway.

 Concurrency problems in SCR
 ---

 Key: FELIX-3345
 URL: https://issues.apache.org/jira/browse/FELIX-3345
 Project: Felix
  Issue Type: Bug
  Components: Declarative Services (SCR)
Affects Versions:  scr-1.6.0
Reporter: David Jencks
Assignee: Felix Meschberger
 Attachments: FELIX-3345-2.diff, FELIX-3345-3.diff, FELIX-3345-4.diff, 
 FELIX-3345-5.diff, FELIX-3345.diff


 We've been encountering several exceptions thrown intermittently from DS.  
 They generally look like ungetting service on a disposed-of SCR 
 BundleComponentActivator, ComponentManager, or DependencyManager.  There may 
 be two threads trying to shut down the same bundles at the same time.  I'm 
 not sure how to investigate the root cause or if this kind of behavior is 
 expected.  The SCR code generally doesn't look very thread safe.  It's easy 
 to fix the specific problems we see by adding more checks to the SCR code 
 so the NPEs are avoided, or attempted use of closed bundle contexts are 
 caught and ignored.  I'd be happy to keep looking into this but could use 
 some hints about what should be happening.  Unless someone can come up with a 
 better explanation and fix it would be great meanwhile to patch the code to 
 avoid throwing the exceptions.
 Here are some of the typical stack traces we see:
 Stack Dump = org.osgi.framework.ServiceException: Exception in 
 org.apache.felix.scr.impl.manager.DelayedComponentManager.ungetService()
   at 
 org.eclipse.osgi.internal.serviceregistry.ServiceUse.releaseService(ServiceUse.java:287)
   at 
 org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.releaseService(ServiceRegistrationImpl.java:562)
   at 
 org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.releaseServicesInUse(ServiceRegistry.java:665)
   at 
 org.eclipse.osgi.framework.internal.core.BundleContextImpl.close(BundleContextImpl.java:91)
   at 
 org.eclipse.osgi.framework.internal.core.BundleHost.stopWorker(BundleHost.java:514)
   at 
 org.eclipse.osgi.framework.internal.core.AbstractBundle.suspend(AbstractBundle.java:565)
   at 
 org.eclipse.osgi.framework.internal.core.Framework.suspendBundle(Framework.java:1161)
   at 
 org.eclipse.osgi.framework.internal.core.StartLevelManager.decFWSL(StartLevelManager.java:595)
   at 
 org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:257)
   at 
 org.eclipse.osgi.framework.internal.core.StartLevelManager.shutdown(StartLevelManager.java:215)
   at 
 org.eclipse.osgi.framework.internal.core.InternalSystemBundle.suspend(InternalSystemBundle.java:284)
   at 
 org.eclipse.osgi.framework.internal.core.Framework.shutdown(Framework.java:691)
   at 
 org.eclipse.osgi.framework.internal.core.Framework.close(Framework.java:598)
   at 
 org.eclipse.osgi.framework.internal.core.InternalSystemBundle$1.run(InternalSystemBundle.java:261)
   at java.lang.Thread.run(Thread.java:680)
 Caused by: java.lang.NullPointerException
   at 
 org.apache.felix.scr.impl.BundleComponentActivator.log(BundleComponentActivator.java:614)
   at 
 org.apache.felix.scr.impl.BundleComponentActivator.log(BundleComponentActivator.java:589)
   at 
 org.apache.felix.scr.impl.manager.AbstractComponentManager.log(AbstractComponentManager.java:633)
   at 
 org.apache.felix.scr.impl.manager.AbstractComponentManager$State.log(AbstractComponentManager.java:1000)
   at 
 org.apache.felix.scr.impl.manager.AbstractComponentManager$State.ungetService(AbstractComponentManager.java:964)
   at 
 org.apache.felix.scr.impl.manager.DelayedComponentManager.ungetService(DelayedComponentManager.java:114)
   at 
 org.eclipse.osgi.internal.serviceregistry.ServiceUse$3.run(ServiceUse.java:277)
   at java.security.AccessController.doPrivileged(Native Method)
   at 
 org.eclipse.osgi.internal.serviceregistry.ServiceUse.releaseService(ServiceUse.java:275)
   ... 14 more
 Stack Dump = org.osgi.framework.ServiceException: Exception in 
 org.apache.felix.scr.impl.manager.DelayedComponentManager.ungetService()
   at 
 org.eclipse.osgi.internal.serviceregistry.ServiceUse.releaseService(ServiceUse.java:287)
   at 
 

[jira] [Commented] (FELIX-3371) update scr build to recent pax components

2012-03-07 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3371?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13224985#comment-13224985
 ] 

Felix Meschberger commented on FELIX-3371:
--

Applied patch FELIX-3371-3.diff in Rev. 1298268

 update scr build to recent pax components
 -

 Key: FELIX-3371
 URL: https://issues.apache.org/jira/browse/FELIX-3371
 Project: Felix
  Issue Type: Improvement
  Components: Declarative Services (SCR)
Affects Versions:  scr-1.6.0
Reporter: David Jencks
Assignee: Felix Meschberger
 Attachments: FELIX-3371-1.diff, FELIX-3371-2.diff, FELIX-3371-3.diff


 scr is using some really antique pax components.  In order to help people 
 write more integration tests it would be useful to use current versions.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3345) Concurrency problems in SCR

2012-03-07 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3345?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13224986#comment-13224986
 ] 

Felix Meschberger commented on FELIX-3345:
--

What about the patches 3 and 4 ? Should these also be applied ? Are there any 
differences between them ?

 Concurrency problems in SCR
 ---

 Key: FELIX-3345
 URL: https://issues.apache.org/jira/browse/FELIX-3345
 Project: Felix
  Issue Type: Bug
  Components: Declarative Services (SCR)
Affects Versions:  scr-1.6.0
Reporter: David Jencks
Assignee: Felix Meschberger
 Attachments: FELIX-3345-2.diff, FELIX-3345-3.diff, FELIX-3345-4.diff, 
 FELIX-3345-5.diff, FELIX-3345.diff


 We've been encountering several exceptions thrown intermittently from DS.  
 They generally look like ungetting service on a disposed-of SCR 
 BundleComponentActivator, ComponentManager, or DependencyManager.  There may 
 be two threads trying to shut down the same bundles at the same time.  I'm 
 not sure how to investigate the root cause or if this kind of behavior is 
 expected.  The SCR code generally doesn't look very thread safe.  It's easy 
 to fix the specific problems we see by adding more checks to the SCR code 
 so the NPEs are avoided, or attempted use of closed bundle contexts are 
 caught and ignored.  I'd be happy to keep looking into this but could use 
 some hints about what should be happening.  Unless someone can come up with a 
 better explanation and fix it would be great meanwhile to patch the code to 
 avoid throwing the exceptions.
 Here are some of the typical stack traces we see:
 Stack Dump = org.osgi.framework.ServiceException: Exception in 
 org.apache.felix.scr.impl.manager.DelayedComponentManager.ungetService()
   at 
 org.eclipse.osgi.internal.serviceregistry.ServiceUse.releaseService(ServiceUse.java:287)
   at 
 org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.releaseService(ServiceRegistrationImpl.java:562)
   at 
 org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.releaseServicesInUse(ServiceRegistry.java:665)
   at 
 org.eclipse.osgi.framework.internal.core.BundleContextImpl.close(BundleContextImpl.java:91)
   at 
 org.eclipse.osgi.framework.internal.core.BundleHost.stopWorker(BundleHost.java:514)
   at 
 org.eclipse.osgi.framework.internal.core.AbstractBundle.suspend(AbstractBundle.java:565)
   at 
 org.eclipse.osgi.framework.internal.core.Framework.suspendBundle(Framework.java:1161)
   at 
 org.eclipse.osgi.framework.internal.core.StartLevelManager.decFWSL(StartLevelManager.java:595)
   at 
 org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:257)
   at 
 org.eclipse.osgi.framework.internal.core.StartLevelManager.shutdown(StartLevelManager.java:215)
   at 
 org.eclipse.osgi.framework.internal.core.InternalSystemBundle.suspend(InternalSystemBundle.java:284)
   at 
 org.eclipse.osgi.framework.internal.core.Framework.shutdown(Framework.java:691)
   at 
 org.eclipse.osgi.framework.internal.core.Framework.close(Framework.java:598)
   at 
 org.eclipse.osgi.framework.internal.core.InternalSystemBundle$1.run(InternalSystemBundle.java:261)
   at java.lang.Thread.run(Thread.java:680)
 Caused by: java.lang.NullPointerException
   at 
 org.apache.felix.scr.impl.BundleComponentActivator.log(BundleComponentActivator.java:614)
   at 
 org.apache.felix.scr.impl.BundleComponentActivator.log(BundleComponentActivator.java:589)
   at 
 org.apache.felix.scr.impl.manager.AbstractComponentManager.log(AbstractComponentManager.java:633)
   at 
 org.apache.felix.scr.impl.manager.AbstractComponentManager$State.log(AbstractComponentManager.java:1000)
   at 
 org.apache.felix.scr.impl.manager.AbstractComponentManager$State.ungetService(AbstractComponentManager.java:964)
   at 
 org.apache.felix.scr.impl.manager.DelayedComponentManager.ungetService(DelayedComponentManager.java:114)
   at 
 org.eclipse.osgi.internal.serviceregistry.ServiceUse$3.run(ServiceUse.java:277)
   at java.security.AccessController.doPrivileged(Native Method)
   at 
 org.eclipse.osgi.internal.serviceregistry.ServiceUse.releaseService(ServiceUse.java:275)
   ... 14 more
 Stack Dump = org.osgi.framework.ServiceException: Exception in 
 org.apache.felix.scr.impl.manager.DelayedComponentManager.ungetService()
   at 
 org.eclipse.osgi.internal.serviceregistry.ServiceUse.releaseService(ServiceUse.java:287)
   at 
 org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.releaseService(ServiceRegistrationImpl.java:562)
   at 
 org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.unregister(ServiceRegistrationImpl.java:245)
   at 
 

[jira] [Commented] (FELIX-3377) Allow a component to update its own service properties

2012-03-07 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3377?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13225019#comment-13225019
 ] 

Felix Meschberger commented on FELIX-3377:
--

Thanks a lot for providing the patch.

I have applied it slightly modified in Rev. 1298275:
  - Added some more JavaDoc to ExtComponentContext
  - Have ExtComponentContext extend ComponentContext
  - Internally tread property overwrites like supplied CM configuration
This allows for properly transient property modification instead
of overwriting the actual descriptor properties which would cause
the properties for all instances created from the same descriptor
to be subsequently modified.

Does this sound correct ?

 Allow a component to update its own service properties
 --

 Key: FELIX-3377
 URL: https://issues.apache.org/jira/browse/FELIX-3377
 Project: Felix
  Issue Type: Improvement
  Components: Declarative Services (SCR)
Affects Versions:  scr-1.6.0
Reporter: David Jencks
 Attachments: FELIX-3377-2.diff, FELIX-3377.diff


 If you just register a service in code, you can give the ServiceRegistration 
 to the service and it can update its service properties to reflect what it 
 can discover about its environment.  This proposes that services registered 
 through DS should be able to do this too, by calling an 
 updateProperties(Dictionary) method on the ComponentContext.  (Since we'd 
 need a spec update to add the method to ComponentContext, I added a new 
 interface that ComponentContextImpl implements).
 Right now a service could get Config Admin and modify the properties there, 
 but then (a) the update method is called even though the component itself 
 initiated the changes and (b) the new property values are persisted which is 
 presumably not desired.
 According to the spec config admin properties override default property 
 values specified in the component xml.  I think that in order to reduce 
 confusion, once a property has been set through config admin it should not be 
 possible to update it through this update method.  This also makes 
 implementing this idea easy.
 IIUC this idea does not make sense for component factories.
 This idea was originally suggested by Erin Schnabel in OSGI bug 2250.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3368) Class loading fails on shutdown because zip is unreadable

2012-03-01 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3368?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13219895#comment-13219895
 ] 

Felix Meschberger commented on FELIX-3368:
--

Couldn't we just throw ClassNotFoundException in this case ? (or maybe I am 
just off by a bit ;-) )

 Class loading fails on shutdown because zip is unreadable
 -

 Key: FELIX-3368
 URL: https://issues.apache.org/jira/browse/FELIX-3368
 Project: Felix
  Issue Type: Bug
  Components: Framework
Affects Versions: framework-3.2.2
Reporter: Dustin Schultz

 If a particular module executes a shutdown hook which loads a class at 
 runtime, it will fail with NoClassDefFound errors because the classloader 
 will be unable to load the class from the jar.
 ERROR: JarContent: Unable to read bytes. (java.lang.IllegalStateException: 
 zip file closed)
 java.lang.IllegalStateException: zip file closed
 at java.util.zip.ZipFile.ensureOpen(ZipFile.java:415)
 at java.util.zip.ZipFile.getEntry(ZipFile.java:160)
 at org.apache.felix.framework.util.ZipFileX.getEntry(ZipFileX.java:52)
 at 
 org.apache.felix.framework.cache.JarContent.getEntryAsBytes(JarContent.java:122)
 at 
 org.apache.felix.framework.ModuleImpl$ModuleClassLoader.findClass(ModuleImpl.java:1816)
 at 
 org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:727)
 at org.apache.felix.framework.ModuleImpl.access$400(ModuleImpl.java:71)
 at 
 org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1768)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
 at 
 org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCache.doDispose(IndexedDiskCache.java:920)
 at

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3361) Bundle#start does not comply with the spec

2012-02-24 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3361?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13215539#comment-13215539
 ] 

Felix Meschberger commented on FELIX-3361:
--

If start levels come into play the StartLevel service dictates the actual 
bundle states.

  * when the bundle start level is greater than the framework target start 
 level

The bundle is not expected to start until the framework start level is 
increased to at least the bundle's start level. Start levels are increased 
step-wise. So if a bundle is at 5, the current is 2 and the target is 6, the 
start level is increased to 3, 4, 5, and 6 and bundles assigned to the 
respective start levels are actually started.

Thus a bundle at level x with the framework start level being y  x will at 
most be in the RESOLVED state.

 * if the start level thread is already running

Right, if the start level is being increased, the bundle is only actually 
started when passing the bundle's start level.

Bundle.start in these situations will only persistently mark the bundle started 
(for later start level operations to actually start the bundle).

 Bundle#start does not comply with the spec
 --

 Key: FELIX-3361
 URL: https://issues.apache.org/jira/browse/FELIX-3361
 Project: Felix
  Issue Type: Bug
Affects Versions: framework-4.0.2
Reporter: Guillaume Nodet

 The spec says:  When the start method returns without an exception, the 
 state of the bundle will either be ACTIVE or STARTING, depending on the 
 declared activation policy and whether it was used. If the start method 
 throws an exception, then the bundle will not be in either of these states 
 and the stop method will not be called for this Bundle Activator instance.
 However there is a case where this does not happen, which is when the start 
 level thread is already running
 I think the Bundle#start should either activate the bundle or wait for the 
 bundle to be activated before returning in order to comply with the spec. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3361) Bundle#start does not comply with the spec

2012-02-24 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3361?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13215569#comment-13215569
 ] 

Felix Meschberger commented on FELIX-3361:
--

See 8.3.5 Starting a Bundle:
If a bundle is started by calling the Bundle.startmethod, then the OSGi 
Framework must mark the bundle as persistently started. The OSGi Framework must 
not actually start a bundle when the active start level is less than the 
bundle’s start level. In that case, the state must not change.

Also the Bundle.start(int) JavaDoc clarifies this.

 Bundle#start does not comply with the spec
 --

 Key: FELIX-3361
 URL: https://issues.apache.org/jira/browse/FELIX-3361
 Project: Felix
  Issue Type: Bug
Affects Versions: framework-4.0.2
Reporter: Guillaume Nodet

 The spec says:  When the start method returns without an exception, the 
 state of the bundle will either be ACTIVE or STARTING, depending on the 
 declared activation policy and whether it was used. If the start method 
 throws an exception, then the bundle will not be in either of these states 
 and the stop method will not be called for this Bundle Activator instance.
 However there is a case where this does not happen, which is when the start 
 level thread is already running
 I think the Bundle#start should either activate the bundle or wait for the 
 bundle to be activated before returning in order to comply with the spec. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3360) Bundle location is statically set for dynamically bound bundles

2012-02-21 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3360?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13212730#comment-13212730
 ] 

Felix Meschberger commented on FELIX-3360:
--

Sorry, I have to decline this request because it would violate the spec.

The spec states that a configuration retrieved with the single argument 
getConfiguration(String pid) method must be statically bound to the calling 
bundle. So everything works correctly.

In fact your use case of uninstalling and re-installing a bundle to update it 
is not sensitive: You should really update the existing bundle. Not only will 
you keep the configuration properly bound but also will you not loose any 
potential bundle-private data (accessed through 
BundleContext.getDataFile(String)).

With Configuration Admin spec 1.4 new definitions of the bundle location exist 
and the Apache Felix SCR bundle (I assume you refer to that when you talk of 
the getConfiguration(String pid) method) will be updated to actually use an 
explicit bundle location of ?* when accessing configuration to prevent this 
kind of binding of unbound configuration.

 Bundle location is statically set for dynamically bound bundles
 ---

 Key: FELIX-3360
 URL: https://issues.apache.org/jira/browse/FELIX-3360
 Project: Felix
  Issue Type: Bug
  Components: Configuration Admin
Affects Versions:  configadmin-1.2.8
Reporter: Julian Sedding
 Attachments: FELIX-3360.patch


 The method ConfigurationAdminImpl#getConfiguration(pid) dynamically sets the 
 configuration's bundle location if it is null. However, it uses 
 ConfigurationImpl#setStaticBundleLocation(location) in order to do so. This 
 should be changed to set the dynamic location. Attached is a proposed patch.
 The issue I observed, that lead me to this bug, was as follows:
 1. Installed a number of factory configurations and the bundle (version 
 1.0.0, bundle location: jcrinstall:/apps/sample/install/bundle-1.0.0.jar) 
 providing the service implementation (using SCR) via Sling's OSGi Installer
 2. Uninstalled the bundle.
 3. Installed the bundle (version 1.0.2, bundle location: 
 jcrinstall:/apps/sample/install/bundle-1.0.2.jar)
 After this, the factory configurations were not bound to the bundle any 
 longer, because they were still bound to the no longer existing bundle 
 location jcrinstall:/apps/sample/install/bundle-1.0.0.jar. This basically 
 leaves stale configurations and a badly configured system.
 While Sling's OSGi Installer handles updates without changing the bundle 
 location normally, the above scenario differs in that instead of an update, 
 there is an uninstall + re-install happening. The Configuration Admin Service 
 Specification 1.3 clearly states (in 104.4.1 Location Binding): When this 
 dynamically bound bundle is subsequently uninstalled, the Configuration 
 object's bundle location must be set to null again so it can be bound again 
 later.
 Note: in the patch I also changed the return type of 
 ConfigurationImpl#tryBindLocation() from boolean to void. Before, it always 
 returned true, so the return value is meaningless. I almost ended up using it 
 in an if statement because of the return type, which made me believe that it 
 returns true if the bundle location is set and false otherwise.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-2625) Provide a plugin for the Gogo Shell

2012-01-31 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-2625?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13196873#comment-13196873
 ] 

Felix Meschberger commented on FELIX-2625:
--

Committed a first shot a Felix provided Web Console plugin in Rev. 
1238456/1238457.

This is basically the Karaf WebConsole plugin mentioned by Guillaume above with 
some dependencies from Karaf Shell inlined and stripped down. Particularly the 
blueprint stuff and Felix Gogo internals are removed.

 Provide a plugin for the Gogo Shell
 ---

 Key: FELIX-2625
 URL: https://issues.apache.org/jira/browse/FELIX-2625
 Project: Felix
  Issue Type: New Feature
  Components: Web Console
Reporter: Felix Meschberger
Assignee: Felix Meschberger

 The Gogo Shell has replaced the simple Felix Shell as the command line tool 
 for OSGi Management. We should provide support for this shell from within the 
 Web Console, too.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3334) PreferencesManager can throw NPE after being stopped.

2012-01-31 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3334?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13197641#comment-13197641
 ] 

Felix Meschberger commented on FELIX-3334:
--

A bundle being stopped is automatically unregistered as a bundle listener but 
only after having called the stop method of the BundleActivator.

Looking at the code, chances are minimal (if there is a concurrency between 
event handling and handling stop), but this would not be 100% solved by the 
patch (because an event might still be coming in.

A better fix would be to check for the null-situation in the event handler when 
accessing the store.

Did you actually encounter an NPE ?

 PreferencesManager can throw NPE after being stopped.
 -

 Key: FELIX-3334
 URL: https://issues.apache.org/jira/browse/FELIX-3334
 Project: Felix
  Issue Type: Bug
  Components: Preferences Service
Affects Versions: prefs-1.0.4
Reporter: J.W. Janssen
  Labels: patch
 Attachments: quickfix.patch


 PreferencesManager#bundleChanged tries to intercept bundles that are 
 uninstalled. However, if the PreferencesManager itself is stopped, it does 
 not unregister itself as bundle listener, causing possible NPEs when other 
 bundles depending on the preferences service are stopped later on, for 
 example during a shutdown.
 I've got a patch available, will attach it to this issue to be applied.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3325) Finding activate/deactivate/modified methods has numerous problems

2012-01-29 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3325?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13195747#comment-13195747
 ] 

Felix Meschberger commented on FELIX-3325:
--

Thanks for providing the patch.

 ReferenceMetadata.validate

right, not a big deal in reality, but good for code completeness.

 BaseMethod.getMethod

Wow, yeah, the expected exception is eaten.

 ActivateMethod.doFindMethod

right.

going to apply this patch.

 Finding activate/deactivate/modified methods has numerous problems
 --

 Key: FELIX-3325
 URL: https://issues.apache.org/jira/browse/FELIX-3325
 Project: Felix
  Issue Type: Bug
  Components: Declarative Services (SCR)
Affects Versions:  scr-1.6.0
Reporter: David Jencks
 Attachments: FELIX-3325.diff


 I've identified at least 3 problems in the code finding appropriate 
 activate/deactivate/modified methods on DS components.
 1. BaseMethod.getMethod wraps SuitableMethodNotAccessibleException exceptions 
 in InvocationTargetExceptions, which prevents callers from detecting the 
 SuitableMethodNotAccessibleException and responding appropriately.
 2. ActivateMethod.doFindMethod: if it gets to looking for an empty method, it 
 will return null if there isn't one, even if there was a previous 
 SuitableMethodNotAccessible detected.  It should only return a non-null 
 method.
 3. ActivateMethod.getSingleParameterMethod will throw a 
 SuitableMethodNotAccessibleException even if it finds an accessible suitable 
 method after the non-accessible one.
 In addition, ReferenceMetadata.validate does not make the object read-only by 
 setting m_validate.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3317) Concurrency issue during Component Service registration

2012-01-26 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3317?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13193705#comment-13193705
 ] 

Felix Meschberger commented on FELIX-3317:
--

Committed a first fix in Rev. 1236123

This implements the second option by checking the consistency before assigning 
the service registration field: If the state is (still) the same after 
registering the service and the service registration field is still null 
(concurrent execution might have already set the field) the field is set. 
Otherwise a WARN message is logged with the log service and the service is 
unregistered again.

 Concurrency issue during Component Service registration
 ---

 Key: FELIX-3317
 URL: https://issues.apache.org/jira/browse/FELIX-3317
 Project: Felix
  Issue Type: Bug
  Components: Declarative Services (SCR)
Affects Versions:  scr-1.6.0
Reporter: Felix Meschberger
Assignee: Felix Meschberger
 Fix For: scr-1.6.2


 In our Sling-based application we saw the following behavior: The Sling 
 ResourceResolverFactory is a component being activated. Yet every now and 
 then a field of that component seems to become null which is not expected for 
 an activated ResourceResolverFactory component and thus causes a 
 NullPointerException.
 Upon inspection I saw, that for the same Declarative Services component two 
 Services have been registered where only one was actually expected.
 Turns out that consumers of the ResoureResovlerFactory where all bound to the 
 same service. The component on the other hand has been cycled due to a 
 configuration update. So one service is backed by a deactivated component 
 (whose field has been reset to null already) and the other service is live.
 The problem is that the service backed by the deactivated method has not been 
 unregistered and thus all consumers are hooked up to the deactivated instance 
 causing all sorts of problems ...
 This is what most probably happens in the AbstractComponentManager:
  *  T1 Unsatisfied.activate has set the state to Active already 
 before calling registerService
  *  T1 registerService is called but the service registration field 
 field is not assigned yet
 during registerService ServiceListeners are called
  *  T2 A Configuration update comes in and 
 Satisfied(Active).deactivate is called
  *  T2 calls unregisterComponentService; does nothing because the 
 service registration field is not assigned
  *  T2 destroys component
  *  T1 assigns field from service registration
 As a result the deactivated object's service registration may be unregistered 
 later when the component is cycled again and the second service registration 
 will only be unregistered when the providing bundle is restarted.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3317) Concurrency issue during Component Service registration

2012-01-26 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3317?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13193752#comment-13193752
 ] 

Felix Meschberger commented on FELIX-3317:
--

Improved state check in Rev. 1236132: a delayed or service factory component 
may be really activated during service registration and thus may change the 
state from Registered to Active. This is perfectly valid and thus must not 
cause the service registration to be thrown away.

Also improved logging of the Service Reference to get some usefull information 
out of it.

 Concurrency issue during Component Service registration
 ---

 Key: FELIX-3317
 URL: https://issues.apache.org/jira/browse/FELIX-3317
 Project: Felix
  Issue Type: Bug
  Components: Declarative Services (SCR)
Affects Versions:  scr-1.6.0
Reporter: Felix Meschberger
Assignee: Felix Meschberger
 Fix For: scr-1.6.2


 In our Sling-based application we saw the following behavior: The Sling 
 ResourceResolverFactory is a component being activated. Yet every now and 
 then a field of that component seems to become null which is not expected for 
 an activated ResourceResolverFactory component and thus causes a 
 NullPointerException.
 Upon inspection I saw, that for the same Declarative Services component two 
 Services have been registered where only one was actually expected.
 Turns out that consumers of the ResoureResovlerFactory where all bound to the 
 same service. The component on the other hand has been cycled due to a 
 configuration update. So one service is backed by a deactivated component 
 (whose field has been reset to null already) and the other service is live.
 The problem is that the service backed by the deactivated method has not been 
 unregistered and thus all consumers are hooked up to the deactivated instance 
 causing all sorts of problems ...
 This is what most probably happens in the AbstractComponentManager:
  *  T1 Unsatisfied.activate has set the state to Active already 
 before calling registerService
  *  T1 registerService is called but the service registration field 
 field is not assigned yet
 during registerService ServiceListeners are called
  *  T2 A Configuration update comes in and 
 Satisfied(Active).deactivate is called
  *  T2 calls unregisterComponentService; does nothing because the 
 service registration field is not assigned
  *  T2 destroys component
  *  T1 assigns field from service registration
 As a result the deactivated object's service registration may be unregistered 
 later when the component is cycled again and the second service registration 
 will only be unregistered when the providing bundle is restarted.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3318) NPE in WebConsole when trying to uninstall a bundle

2012-01-26 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3318?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13193849#comment-13193849
 ] 

Felix Meschberger commented on FELIX-3318:
--

I think this is a bug in the PackageAdminImpl.getBundleType method: This calls 
adapt to get the BundleRevision of the bundle which returns null for 
uninstalled bundles (probably correctly). Yet this result is not checked in the 
getBundleType method and thus the NPE.

 NPE in WebConsole when trying to uninstall a bundle
 ---

 Key: FELIX-3318
 URL: https://issues.apache.org/jira/browse/FELIX-3318
 Project: Felix
  Issue Type: Bug
  Components: Web Console
Reporter: Alex Parvulescu
Priority: Minor
 Attachments: FELIX-3318.patch


 Tested against 3.18 and a trunk build (3.1.9.SNAPSHOT) as well. Both fail in 
 the same way (stacktrace comes from trunk):
 AJAX Error
 The request failed: 
 HTTP ERROR 500
 Problem accessing /system/console/bundles/20. Reason:
 INTERNAL_SERVER_ERROR
 Caused by:
 java.lang.NullPointerException
   at 
 org.apache.felix.framework.PackageAdminImpl.getBundleType(PackageAdminImpl.java:112)
   at 
 org.apache.felix.webconsole.internal.core.BundlesServlet.isFragmentBundle(BundlesServlet.java:715)
   at 
 org.apache.felix.webconsole.internal.core.BundlesServlet.doPost(BundlesServlet.java:358)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
   at 
 org.apache.felix.webconsole.internal.servlet.OsgiManager.service(OsgiManager.java:473)
   at 
 org.apache.felix.webconsole.internal.servlet.OsgiManager.service(OsgiManager.java:418)
   at 
 org.apache.felix.http.base.internal.handler.ServletHandler.doHandle(ServletHandler.java:96)
   at 
 org.apache.felix.http.base.internal.handler.ServletHandler.handle(ServletHandler.java:79)
   at 
 org.apache.felix.http.base.internal.dispatch.ServletPipeline.handle(ServletPipeline.java:42)
   at 
 org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:49)
   at 
 org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:33)
   at 
 org.apache.felix.http.base.internal.dispatch.FilterPipeline.dispatch(FilterPipeline.java:48)
   at 
 org.apache.felix.http.base.internal.dispatch.Dispatcher.dispatch(Dispatcher.java:39)
   at 
 org.apache.felix.http.base.internal.DispatcherServlet.service(DispatcherServlet.java:67)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
   at 
 org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
   at 
 org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
   at 
 org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
   at 
 org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
   at 
 org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
   at org.mortbay.jetty.Server.handle(Server.java:326)
   at 
 org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
   at 
 org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:943)
   at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:756)
   at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)
   at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
   at 
 org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410)
   at 
 org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
 
 I'm testing against a barebone felix install:
 g! lb
 START LEVEL 1
ID|State  |Level|Name
 0|Active |0|System Bundle (4.0.1)
 1|Active |1|Apache Felix Bundle Repository (1.6.6)
 2|Active |1|Apache Felix Gogo Command (0.12.0)
 3|Active |1|Apache Felix Gogo Runtime (0.10.0)
 4|Active |1|Apache Felix Gogo Shell (0.10.0)
 5|Active |1|Apache Felix Log Service (1.0.1)
 6|Active |1|Apache Felix Http Bundle (2.2.0)
 7|Active |1|Apache Felix Http Jetty (2.2.0)
 8|Active |1|Apache Felix Configuration Admin Service (1.2.8)
 9|Active |1|Apache Felix Metatype Service (1.0.4)
15|Active |1|Apache Commons IO Bundle (1.4.0)
16|Active |1|Apache Commons FileUpload Bundle (1.2.1)
17|Active |1|Apache Geronimo Bundles: json-20090211 
 (20090211.0.0.1)
23|Active |1|Apache Felix Web Management Console (3.1.9.SNAPSHOT)
 I can install any bundle and then delete it and consistently see this error.

--
This message is automatically generated by JIRA.
If 

[jira] [Commented] (FELIX-3318) NPE in WebConsole when trying to uninstall a bundle

2012-01-26 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3318?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13193853#comment-13193853
 ] 

Felix Meschberger commented on FELIX-3318:
--

Hmm, since the PackageAdminImpl.getBundleType method actually wants to have the 
BundleRevisionImpl class, it should probably ask for it. This should never 
return null, probably.

 NPE in WebConsole when trying to uninstall a bundle
 ---

 Key: FELIX-3318
 URL: https://issues.apache.org/jira/browse/FELIX-3318
 Project: Felix
  Issue Type: Bug
  Components: Framework
Affects Versions: framework-4.0.2
Reporter: Alex Parvulescu
Priority: Minor
 Attachments: FELIX-3318.patch


 Tested against 3.18 and a trunk build (3.1.9.SNAPSHOT) as well. Both fail in 
 the same way (stacktrace comes from trunk):
 AJAX Error
 The request failed: 
 HTTP ERROR 500
 Problem accessing /system/console/bundles/20. Reason:
 INTERNAL_SERVER_ERROR
 Caused by:
 java.lang.NullPointerException
   at 
 org.apache.felix.framework.PackageAdminImpl.getBundleType(PackageAdminImpl.java:112)
   at 
 org.apache.felix.webconsole.internal.core.BundlesServlet.isFragmentBundle(BundlesServlet.java:715)
   at 
 org.apache.felix.webconsole.internal.core.BundlesServlet.doPost(BundlesServlet.java:358)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
   at 
 org.apache.felix.webconsole.internal.servlet.OsgiManager.service(OsgiManager.java:473)
   at 
 org.apache.felix.webconsole.internal.servlet.OsgiManager.service(OsgiManager.java:418)
   at 
 org.apache.felix.http.base.internal.handler.ServletHandler.doHandle(ServletHandler.java:96)
   at 
 org.apache.felix.http.base.internal.handler.ServletHandler.handle(ServletHandler.java:79)
   at 
 org.apache.felix.http.base.internal.dispatch.ServletPipeline.handle(ServletPipeline.java:42)
   at 
 org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:49)
   at 
 org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:33)
   at 
 org.apache.felix.http.base.internal.dispatch.FilterPipeline.dispatch(FilterPipeline.java:48)
   at 
 org.apache.felix.http.base.internal.dispatch.Dispatcher.dispatch(Dispatcher.java:39)
   at 
 org.apache.felix.http.base.internal.DispatcherServlet.service(DispatcherServlet.java:67)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
   at 
 org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
   at 
 org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
   at 
 org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
   at 
 org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
   at 
 org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
   at org.mortbay.jetty.Server.handle(Server.java:326)
   at 
 org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
   at 
 org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:943)
   at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:756)
   at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)
   at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
   at 
 org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410)
   at 
 org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
 
 I'm testing against a barebone felix install:
 g! lb
 START LEVEL 1
ID|State  |Level|Name
 0|Active |0|System Bundle (4.0.1)
 1|Active |1|Apache Felix Bundle Repository (1.6.6)
 2|Active |1|Apache Felix Gogo Command (0.12.0)
 3|Active |1|Apache Felix Gogo Runtime (0.10.0)
 4|Active |1|Apache Felix Gogo Shell (0.10.0)
 5|Active |1|Apache Felix Log Service (1.0.1)
 6|Active |1|Apache Felix Http Bundle (2.2.0)
 7|Active |1|Apache Felix Http Jetty (2.2.0)
 8|Active |1|Apache Felix Configuration Admin Service (1.2.8)
 9|Active |1|Apache Felix Metatype Service (1.0.4)
15|Active |1|Apache Commons IO Bundle (1.4.0)
16|Active |1|Apache Commons FileUpload Bundle (1.2.1)
17|Active |1|Apache Geronimo Bundles: json-20090211 
 (20090211.0.0.1)
23|Active |1|Apache Felix Web Management Console (3.1.9.SNAPSHOT)
 I can install any bundle and then delete it and consistently see this error.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact 

[jira] [Commented] (FELIX-3311) Cookie handling seems not to work anymore

2012-01-25 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3311?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13193022#comment-13193022
 ] 

Felix Meschberger commented on FELIX-3311:
--

I recently (FELIX-3290) changed the cookie handling to create consistent cookie 
names and also to make the cookies more long-lived.

Maybe this change didn't really work properly (it seems to have worked in my 
setup...)

 Cookie handling seems not to work anymore
 -

 Key: FELIX-3311
 URL: https://issues.apache.org/jira/browse/FELIX-3311
 Project: Felix
  Issue Type: Bug
  Components: Web Console
Reporter: Carsten Ziegeler
 Fix For: webconsole-3.2.0


 Sorting the bundle list, switching to another tab and going back shows the 
 bundle list in the original sort order but not in the one previously picked
 As this information is in a cookie I assume that cookie handling does now 
 work differently

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3317) Potential concurrency issue during Component Service registration

2012-01-25 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3317?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13193043#comment-13193043
 ] 

Felix Meschberger commented on FELIX-3317:
--

There are multiple approaches to this problem:

(1) Try to delay the destruction of the component due to the configuration 
update if an incomplete satisified state is recognized

(2) Check state consistency after registering the service with the framework: 
If the state after registration is still the same as before and the service 
registration field has not been set (by another thread for example), the field 
is set. Otherwise the field is left untouched and the service is unregistered 
again (the backing object is most probably destroyed anyway).

The first solution must make sure to not create unsolvable deadlocks by for 
example employing a timout in the delay instead of just waiting. Also an 
indication of what incomplete means and is would be required.

The second solution really is a workaround since an invalid (or partially 
invalid) service object is being distributed causing all sorts of log messages 
(and may be trouble).

 Potential concurrency issue during Component Service registration
 -

 Key: FELIX-3317
 URL: https://issues.apache.org/jira/browse/FELIX-3317
 Project: Felix
  Issue Type: Bug
  Components: Declarative Services (SCR)
Affects Versions:  scr-1.6.0
Reporter: Felix Meschberger
Assignee: Felix Meschberger
 Fix For: scr-1.6.2


 In our Sling-based application we saw the following behavior: The Sling 
 ResourceResolverFactory is a component being activated. Yet every now and 
 then a field of that component seems to become null which is not expected for 
 an activated ResourceResolverFactory component and thus causes a 
 NullPointerException.
 Upon inspection I saw, that for the same Declarative Services component two 
 Services have been registered where only one was actually expected.
 Turns out that consumers of the ResoureResovlerFactory where all bound to the 
 same service. The component on the other hand has been cycled due to a 
 configuration update. So one service is backed by a deactivated component 
 (whose field has been reset to null already) and the other service is live.
 The problem is that the service backed by the deactivated method has not been 
 unregistered and thus all consumers are hooked up to the deactivated instance 
 causing all sorts of problems ...
 This is what most probably happens in the AbstractComponentManager:
  *  T1 Unsatisfied.activate has set the state to Active already 
 before calling registerService
  *  T1 registerService is called but the service registration field 
 field is not assigned yet
 during registerService ServiceListeners are called
  *  T2 A Configuration update comes in and 
 Satisfied(Active).deactivate is called
  *  T2 calls unregisterComponentService; does nothing because the 
 service registration field is not assigned
  *  T2 destroys component
  *  T1 assigns field from service registration
 As a result the deactivated object's service registration may be unregistered 
 later when the component is cycled again and the second service registration 
 will only be unregistered when the providing bundle is restarted.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3283) Use generics in the Web Console

2012-01-06 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3283?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13181370#comment-13181370
 ] 

Felix Meschberger commented on FELIX-3283:
--

Basically reverted the commit 1215540  in Rev. 1228221. But left the animal 
sniffer plugin config

 Use generics in the Web Console
 ---

 Key: FELIX-3283
 URL: https://issues.apache.org/jira/browse/FELIX-3283
 Project: Felix
  Issue Type: Task
  Components: Web Console
Affects Versions: webconsole-3.1.8
Reporter: Felix Meschberger
Assignee: Felix Meschberger
 Fix For: webconsole-3.2.0


 Now that the web console has source level Java 5 (but still generates Java 
 1.4 class files) we may make use of generics and enhanced for loops to clean 
 up the code.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3288) NPE when component exposed as a service with servicefactory = true

2011-12-20 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3288?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13173532#comment-13173532
 ] 

Felix Meschberger commented on FELIX-3288:
--

You might want to update the SCR bundle to the latest release (1.6.0 at this 
time). This contains lots of fixes since the virtually age-old 1.0.2 release.

 NPE when component exposed as a service with servicefactory = true
 --

 Key: FELIX-3288
 URL: https://issues.apache.org/jira/browse/FELIX-3288
 Project: Felix
  Issue Type: Bug
  Components: Declarative Services (SCR)
Affects Versions: scr-1.0.2
Reporter: Jarek Gawor

 I have a component that is exposed as a service and is also configured with 
 servicefactory = true. I see the following NPE when shutting the framework:
 java.lang.NullPointerException
   at 
 org.apache.felix.scr.impl.manager.ImmediateComponentManager.disposeImplementationObject(ImmediateComponentManager.java:252)
   at 
 org.apache.felix.scr.impl.manager.ImmediateComponentManager.deleteComponent(ImmediateComponentManager.java:135)
   at 
 org.apache.felix.scr.impl.manager.AbstractComponentManager$Satisfied.deactivate(AbstractComponentManager.java:1075)
   at 
 org.apache.felix.scr.impl.manager.AbstractComponentManager.disposeInternal(AbstractComponentManager.java:357)
   at 
 org.apache.felix.scr.impl.manager.AbstractComponentManager.dispose(AbstractComponentManager.java:196)
   at 
 org.apache.felix.scr.impl.config.ConfiguredComponentHolder.disposeComponents(ConfiguredComponentHolder.java:299)
   at 
 org.apache.felix.scr.impl.BundleComponentActivator.dispose(BundleComponentActivator.java:319)
   at 
 org.apache.felix.scr.impl.Activator.disposeComponents(Activator.java:340)
   at org.apache.felix.scr.impl.Activator.bundleChanged(Activator.java:207)
 Since the component is configured with servicefactory = true, 
 ServiceFactoryComponentManager is used to manage the object. 
 ServiceFactoryComponentManager overrides the createComponent() method from 
 ImmediateComponentManager. ServiceFactoryComponentManager also intended (I 
 think) to override the corresponding deleteComponent() method from 
 ImmediateComponentManager. However, the signature of the deleteComponent() in 
 ImmediateComponentManager has changed a bit so the override doesn't work 
 anymore. So that's what I think is causing the problem in this case.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-2709) Allow webconsole context root be obtained from framework properties

2011-12-19 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-2709?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13172117#comment-13172117
 ] 

Felix Meschberger commented on FELIX-2709:
--

Adding in Rev. 1220660:
  - felix.webconsole.loglevel -- AbstractWebConsolePlugin log level
  - felix.webconsole.locale -- default locale overwriting Accept-Language header

 Allow webconsole context root be obtained from framework properties
 ---

 Key: FELIX-2709
 URL: https://issues.apache.org/jira/browse/FELIX-2709
 Project: Felix
  Issue Type: New Feature
  Components: Web Console
Affects Versions: webconsole-3.1.6
Reporter: Thomas Diesler
Assignee: Felix Meschberger
 Fix For: webconsole-3.2.0




--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-2708) Webconsole causes NPE in Bundle.getResource(String)

2011-12-18 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-2708?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13171874#comment-13171874
 ] 

Felix Meschberger commented on FELIX-2708:
--

The URL is not valid any longer (maybe some repo restructuring).

The point is a potential NPE in the LicenseServlet.sendResource method: if 
pathInfo.innerJar is null but there is no pathInfo.licenseFile resource in the 
bundle, the method still tries to get the bundle resource from 
pathInfo.innerJar, which is null and thus causes the NPE.

 Webconsole causes NPE in Bundle.getResource(String)
 ---

 Key: FELIX-2708
 URL: https://issues.apache.org/jira/browse/FELIX-2708
 Project: Felix
  Issue Type: Bug
  Components: Web Console
Affects Versions: webconsole-3.1.6
Reporter: Thomas Diesler
Assignee: Felix Meschberger
 Fix For: webconsole-3.2.0




--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3022) Add Uptime indication to Status page

2011-12-17 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3022?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13171628#comment-13171628
 ] 

Felix Meschberger commented on FELIX-3022:
--

 Both, start time and up time are calculated based on the start of the web 
 console - which might be different from the system. 

Right. I don't have another time source ;-) Yet, it is better than nothing 

 Add Uptime indication to Status page
 

 Key: FELIX-3022
 URL: https://issues.apache.org/jira/browse/FELIX-3022
 Project: Felix
  Issue Type: Improvement
  Components: Web Console
Affects Versions: webconsole-3.1.8
Reporter: Felix Meschberger
Assignee: Felix Meschberger
 Fix For: webconsole-3.2.0


 Besides the last startup time and indication of the actual up time is easy to 
 calculate and might be interesting to see.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3278) Empty array is not persisted correctly

2011-12-16 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3278?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13170833#comment-13170833
 ] 

Felix Meschberger commented on FELIX-3278:
--

This looks like a duplicate to your own report FELIX-3046 which has been fixed 
in trunk.

 Empty array is not persisted correctly
 --

 Key: FELIX-3278
 URL: https://issues.apache.org/jira/browse/FELIX-3278
 Project: Felix
  Issue Type: Bug
  Components: Configuration Admin
Affects Versions:  configadmin-1.2.8
Reporter: Martin Zdila
Priority: Critical

 Empty array is not persisted correctly. It is stored as
 someProperty=
 At runtime it is then null. If the configuration is updated to empty array 
 again, it is OK just until the framework (or config admin) is restarted.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3269) maven SCR plugin @Property is not properly parsed.

2011-12-13 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3269?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13169144#comment-13169144
 ] 

Felix Meschberger commented on FELIX-3269:
--

Thanks for your report.

I would assume that this issue should be solving itself with FELIX-3247.

 maven SCR plugin @Property is not properly parsed.
 --

 Key: FELIX-3269
 URL: https://issues.apache.org/jira/browse/FELIX-3269
 Project: Felix
  Issue Type: Bug
  Components: Maven SCR Plugin
Affects Versions: maven-scr-plugin-1.7.4
 Environment: Ubuntu linux 11.10, amd64, Java 1.6 - seems to be a 
 parser issue.
Reporter: Francisco Olarte

 When parsing the following property annotations:
 -
 //
 @Property(value = 127.0.0.1 //
 , label = Server host //
 , description = IP address of host to connect to. //
 )
 final static String HOST = host;
 // 
 @Property(intValue = 5000 //
 , label = Yate server port //
 , description = Port number to connect to, =0 to disable this server. 
 //
 )
 final static String PORT = port;
 //
 @Property(value =  //
 , label = Server name //
 , description = Name for this server. //
 )
 final static String NAME = name;
 //
 @Property(value = ALL //
 , label = Server purpose //
 , description = What this served is going to be used for, used to filter 
 them. //
 )
 -
 The metatype.xml is incorrectly generated ( extra chars from the source 
 picked up into attribut name of AD element for port:
 -
 OCD id=com.peoplecall.yate.server name=Configuracion de socket 
 description=Conexiones a los servidores de yate.
 AD id=host type=String default=127.0.0.1 name=Server host 
 description=IP address of host to connect to./
 AD id=port type=Integer default=5000 name=/#10;   
 quot;Yate server port description=Port number to connect to, lt;=0 to 
 disable this server./
 AD id=name type=String default= name=Server name 
 description=Name for this server./
 AD id=purpose type=String default=ALL name=Server purpose 
 description=What this served is going to be used for, used to filter them./
 /OCD
 
 Notice it only happens in the non-string property, even if I use the same 
 comment pattern as the others. I think this is related to a previously 
 reported ( by me ) bug: https://issues.apache.org/jira/browse/FELIX-3234 and 
 due to the SCR plugin reparsing the source code ( I suppose there is a reason 
 for not going to the .class file to pick up annotations ).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3258) Separate parent POM from reactor

2011-12-05 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3258?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13162823#comment-13162823
 ] 

Felix Meschberger commented on FELIX-3258:
--

Created new parent POM in Rev. 1210468

 Separate parent POM from reactor
 

 Key: FELIX-3258
 URL: https://issues.apache.org/jira/browse/FELIX-3258
 Project: Felix
  Issue Type: Improvement
  Components: HTTP Service
Affects Versions: http-2.2.0
Reporter: Felix Meschberger
Assignee: Felix Meschberger
 Fix For: http-parent-3


 The (full) HTTP Service parent POM is currently the same as the reactor pom 
 to build all parts of the service. To support creating independent releases 
 of the parts of the implementation, we should also separate the parent POM 
 from the reactor.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3084) Submission of source code for review of software grant for lightweight HTTP service implementation.

2011-12-05 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3084?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13162835#comment-13162835
 ] 

Felix Meschberger commented on FELIX-3084:
--

Can this be closed now that we have a first release upcoming ?

 Submission of source code for review of software grant for lightweight HTTP 
 service implementation.
 ---

 Key: FELIX-3084
 URL: https://issues.apache.org/jira/browse/FELIX-3084
 Project: Felix
  Issue Type: Task
  Components: HTTP Service
Reporter: Ken Gilmer
  Labels: software
 Attachments: GRANT.pdf, org.apache.felix.http.lightweight-src.tar.gz


 This issue is created as part of the process outlined in the Contributing 
 Source Code Felix page as suggested by Richard Hall in issue FELIX-538[1].  
 The source code attached[6] to this issue is an implementation of the OSGi 
 HTTP Service specification version 1.2.  The code is based on Richard's 
 original server which is also referenced in FELIX-538, and the remaining code 
 was developed by me, with the exception of a few classes which were adapted 
 from existing Felix sources[2].
 Design constraints for this project were backwards compatibility, simplicity, 
 and size.  The code base consists of 23 Java files in 3 packages.  The source 
 is divided into osgi, server, and servlet packages according to the 
 primary purpose of the class, and interfaces are utilized to keep the three 
 domains fairly isolated[3].  The minimal compiled jar which does not include 
 the servlet API or OSGi API currently is 41Kb, and the dependency-free jar 
 with all necessary APIs is 125Kb.  An Ant script is provided that will build 
 the jars and a CI server is also available for binary builds[4] and 
 javadocs[5].
 In terms of features the server doesn't offer:
 -HTTPS
 -Authentication
 -Cookie support
 -Session support
 In addition several aspects of the Servlet implementation have not been 
 tested including:
 -Multipart POST
 -DELETE
 -PUT
 -Non-default character encodings
 And as of the submission several Servlet API methods are unimplemented in 
 (all unimplemented methods throw 
 org.apache.felix.http.lightweight.servlet.UnimplementedAPIException):
 -HttpServletRequest(Impl)
 -HttpServletResponse(Impl)
 However the core functionality has been implemented and tested and the Felix 
 Web Admin application can be hosted with this HTTP Service implementation.
 I plan in continuing to use the service in personal and professional projects 
 and would be happy to continue to add unimplemented features and maintain the 
 code base as a Felix committer.
 Thanks!
 Ken Gilmer
 1: https://issues.apache.org/jira/browse/FELIX-538
 2: 
 /plain-http-service/src/main/java/org/apache/felix/http/lightweight/osgi/DefaultContextImpl.java,
  
 /plain-http-service/src/main/java/org/apache/felix/http/lightweight/osgi/Logger.java
 3: 
 /plain-http-service/src/main/java/org/apache/felix/http/lightweight/osgi/ServiceRegistrationHandler.java,
  
 /plain-http-service/src/main/java/org/apache/felix/http/lightweight/osgi/ServiceRegistrationResolver.java
 4: https://leafcutter.ci.cloudbees.com/job/lightweight%20http%20service/
 5: 
 https://leafcutter.ci.cloudbees.com/job/lightweight%20http%20service/javadoc/
 6: MD5SUM 47580996a8c364890518222494d4d26b  
 org.apache.felix.http.lightweight-src.tar.gz  
  

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-2882) It's dangerous to use service instances as keys in a Map (in the http whiteboard bundle).

2011-12-05 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-2882?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13162837#comment-13162837
 ] 

Felix Meschberger commented on FELIX-2882:
--

To implement FELIX-3226 I have changed this to use the ServiceReference as the 
key

 It's dangerous to use service instances as keys in a Map (in the http 
 whiteboard bundle).
 -

 Key: FELIX-2882
 URL: https://issues.apache.org/jira/browse/FELIX-2882
 Project: Felix
  Issue Type: Bug
  Components: HTTP Service
Affects Versions: http-2.2.0
Reporter: Marcel Offermans
Assignee: Felix Meschberger
Priority: Minor
 Fix For: http-whiteboard-2.3.0


 In ExtenderManagerImpl.addMapping() the key that is used to store a tuple in 
 a Map is actually the service instance that you get from the ServiceTracker. 
 This is dangerous because you have absolutely no idea if that instance 
 correctly implements equals() and hashCode(). It's usually better to use the 
 ServiceReference as the key (which is guaranteed to correctly implement those 
 methods). It's probably only a minor issue in practice, but still one you can 
 look for a long time if it does bite you.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3226) Whiteboard servlet service registered with default HttpContext if registered before HttpContext service

2011-12-05 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3226?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13163003#comment-13163003
 ] 

Felix Meschberger commented on FELIX-3226:
--

Add test dependency to commons-collections in Rev. 1210601


 Whiteboard servlet service registered with default HttpContext if registered 
 before HttpContext service
 ---

 Key: FELIX-3226
 URL: https://issues.apache.org/jira/browse/FELIX-3226
 Project: Felix
  Issue Type: Bug
  Components: HTTP Service
Affects Versions: http-2.2.0
Reporter: Felix Meschberger
Assignee: Felix Meschberger
 Fix For: http-whiteboard-2.3.0


 If a Servlet service for whiteboard registration with the HttpService is 
 registered before the HttpContext service referred to, the servlet is 
 registered with a default context. This may cause problems in the service and 
 prevent correct operation.
 Rather the servlet registration should be delayed until the HttpContext 
 arrives.
 Likewise, once the HttpContext is unregistered, the servlet must be 
 unregistered from the HttpService, too.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-2871) Transistive Dependencies

2011-12-05 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-2871?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13163004#comment-13163004
 ] 

Felix Meschberger commented on FELIX-2871:
--

Cleanup transitive dependencies of the whiteboard module in Rev. 1210601
   - Limit embeddings, import the HTTP extension API
   - All dependencies are provided


 Transistive Dependencies
 

 Key: FELIX-2871
 URL: https://issues.apache.org/jira/browse/FELIX-2871
 Project: Felix
  Issue Type: Improvement
  Components: HTTP Service
Affects Versions: http-2.2.0
 Environment: Win XP
Reporter: Andrew Holland
Priority: Minor
 Fix For: http-2.2.2, http-whiteboard-2.3.0


 i use both felix org.apache.felix.http.jetty  
 org.apache.felix.http.whiteboard bundles with my project, it seems that both 
 these bundles export the same packages.
 is it possible that transitive dependencies could be excluded from the built 
 bundles and Import-Package should be used to find required packages. (the 
 base and api bundles)
 As it stands org.apache.felix.http.jetty includes the following embedded 
 dependencies
 javax.servlet
 org.apache.felix.http.api
 org.apache.felix.http.base
 org.mortbay
 org.osgi.service.http
 org.apache.felix.http.whiteboard bundles includes
 org.apache.felix.http.api
 org.apache.felix.http.base
 is it not possible to just use Import-Package and not use the embedded 
 dependencies

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3237) Provide Web Console plugin for the Http Whiteboard support

2011-11-18 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3237?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13153239#comment-13153239
 ] 

Felix Meschberger commented on FELIX-3237:
--

Implemented a Web Console Plugin in Rev. 1203903

 Provide Web Console plugin for the Http Whiteboard support
 --

 Key: FELIX-3237
 URL: https://issues.apache.org/jira/browse/FELIX-3237
 Project: Felix
  Issue Type: New Feature
  Components: HTTP Service
Affects Versions: http-2.2.0
Reporter: Felix Meschberger
Assignee: Felix Meschberger

 To check whether Whiteboard Filter, Servlet, and HttpContext service 
 registration properly works a Web Console plugin should be added to the Http 
 Service Whiteboard support bundle.
 In addition a ConfigurationPrinter is to be added to get a simple information 
 dump.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3227) ManagedService.update must be called with null if configuration exists but is not visilbe

2011-11-16 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3227?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13151155#comment-13151155
 ] 

Felix Meschberger commented on FELIX-3227:
--

Adapted integration test case to MS.update being called with null for invisible 
configuration (used to not be called at all previously)

 ManagedService.update must be called with null if configuration exists but is 
 not visilbe
 -

 Key: FELIX-3227
 URL: https://issues.apache.org/jira/browse/FELIX-3227
 Project: Felix
  Issue Type: Bug
  Components: Configuration Admin, Specification compliance
Affects Versions:  configadmin-1.2.8
Reporter: Felix Meschberger
Assignee: Felix Meschberger
 Fix For: configadmin-1.4.0


 R 4.3 Configuration Admin Specification (v1.4) prescribes in Section 104.5.3, 
 that ManagedService.update must be called with null if configuration exists 
 but is not visible to the ManagedService. Currently this call with null is 
 only done according to the R 4.2 (v 1.3) specification if configuration does 
 not exist.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3230) ConfiguartionAdapter.setBundleLocation checks configuration permission incorrectly

2011-11-16 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3230?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13151156#comment-13151156
 ] 

Felix Meschberger commented on FELIX-3230:
--

Fixed the check in Rev. 1202654

 ConfiguartionAdapter.setBundleLocation checks configuration permission 
 incorrectly
 --

 Key: FELIX-3230
 URL: https://issues.apache.org/jira/browse/FELIX-3230
 Project: Felix
  Issue Type: Bug
  Components: Configuration Admin, Specification compliance
Affects Versions:  configadmin-1.2.8
Reporter: Felix Meschberger
Assignee: Felix Meschberger
 Fix For: configadmin-1.4.0


 The ConfigurationAdapter.setBundleLocation checks the configuration does not 
 check for CP(*,CONFIGURE) if the configurations current location is null. 
 This must be fixed.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-1963) Add possibility to share ServletContext between bundles

2011-11-14 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-1963?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13150292#comment-13150292
 ] 

Felix Meschberger commented on FELIX-1963:
--

I think for HttpContext equality the Object identity is good enough (and 
probably even correct).

 Add possibility to share ServletContext between bundles
 ---

 Key: FELIX-1963
 URL: https://issues.apache.org/jira/browse/FELIX-1963
 Project: Felix
  Issue Type: New Feature
  Components: HTTP Service
Affects Versions: http-2.0.4
Reporter: Sten Roger Sandvik
Assignee: Sten Roger Sandvik

 Check out the possibility to share ServletContext between bundles. If 
 ServletContextManager is global instead of local to each bundle then it 
 chould be done. If you want to share ServletContext each HttpContext must 
 implement equals method that ensures equality.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3198) Support generic configuration properties

2011-11-04 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3198?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13143892#comment-13143892
 ] 

Felix Meschberger commented on FELIX-3198:
--

In what respect standard or non-standard ? The OSGi Configuration Admin just 
provides a Dictionary of properties and the administrator/tool preparing the 
configuration can put in there what they like. As such this is IMHO along the 
lines of spec.

Now, what is special here, of course, is that not all properties actually 
supported by the service are declared in the metatype descriptor. This of 
course prevents these properties from directly and easily be edited in a 
metatype based configuration GUI, such as the web console. Unless the tool 
allows for raw configuration property editing. While this might be bending the 
concepts a bit, I don't think it really violates any spec.

As for the servlet context path: The path configured here is the path to which 
the servlet cookie is bound. By default this is the servlet context path but it 
can be narrowed down. This, of course, is a Jetty feature which technically 
probably violates the Servlet API spec. Same as the cookie name and request 
parameter name configurations, where spec reads rather strict: The names have 
to be JSESSIONID for the cookie and jsessionid for the request parameter.

The session does not talk about the session cookie's domain directly, though. 
And we had customers actually asking for the session cookie's domain to be 
something different than the default.

As a consequence:
-- I think it is ok to support configuration parameters not exposed through 
Metatype
-- In retrospect (and there is still time to fix this), I am not sure whether 
it is good to expose the session cookie name, parameter name and cooke path 
properties
-- I think having the cookie domain and lifetime configurable is ok, though.

WDYT ?

 Support generic configuration properties
 

 Key: FELIX-3198
 URL: https://issues.apache.org/jira/browse/FELIX-3198
 Project: Felix
  Issue Type: Improvement
  Components: HTTP Service
Affects Versions: http-2.2.0
Reporter: Felix Meschberger
Assignee: Felix Meschberger
 Fix For: http-2.2.2


 Currently the Jetty configuration only allows for a hard-coded limited sets 
 of properties provided in either the Configuration Admin configuration or as 
 framework properties.
 Adding support for generic properties allows administrators to configure the 
 Servlet Container more specifically. Examples of such properties would be 
 Jetty specific session configuration.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-2687) Make HTTP session timeout configurable

2011-11-03 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-2687?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13142954#comment-13142954
 ] 

Felix Meschberger commented on FELIX-2687:
--

We have to make sure to not mix issues here: One is the HTTP(s) connection 
timeout of the original request. The other is the session timeout, which is an 
equally important issues. This shall be handled in FELIX-3199

 Make HTTP session timeout configurable
 --

 Key: FELIX-2687
 URL: https://issues.apache.org/jira/browse/FELIX-2687
 Project: Felix
  Issue Type: Improvement
  Components: HTTP Service
Affects Versions: http-2.0.4
 Environment: apache-karaf-2.1.0 on openjdk-6b18/Linux
Reporter: Wolfgang Glas
Assignee: Felix Meschberger
 Attachments: configurable-http-timeout.patch


 Hi all,
   ThX very much for the really smooth http service packaging ;-)
   According to the docs and to my code review there is no possibility to 
 configure the HTTP session timeout in felix' HTTP service bundle.
   It would be very much appreciated, if such a possiblity might be introduced 
 in a future version of HTTP service.
TIA and best regards,
 Wolfgang Glas

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-2803) Separate project versions from each other

2011-11-03 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-2803?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13142957#comment-13142957
 ] 

Felix Meschberger commented on FELIX-2803:
--

Detached the Jetty sub project in Rev. 1196993 to only depend on released 
dependencies (parent, API, and base) for now.

 Separate project versions from each other
 -

 Key: FELIX-2803
 URL: https://issues.apache.org/jira/browse/FELIX-2803
 Project: Felix
  Issue Type: Improvement
  Components: HTTP Service
Affects Versions: http-2.2.0
Reporter: Felix Meschberger
 Fix For: http-2.2.2


 Currently the versions of the Http Service bundles are linked to each other 
 by way of inheriting the project version number from the parent project. This 
 results in the implied requirement to always relase all bundles in one go.
 IMHO this is not very ideal because there are some bundles, which will have 
 more releases (for example http.base) and some bundles which will have close 
 to no releases (e.g. http.api).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3176) Implement Configuration Admin 1.4 changes

2011-10-27 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3176?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13136810#comment-13136810
 ] 

Felix Meschberger commented on FELIX-3176:
--

In Rev. 1189621 added some DEBUG log statements and the implicit permission for 
bundles to get, manage, and receive their own configuration (where config 
location and bundle location are the same) or un-owned configuration (where 
bundle location is null).

 Implement Configuration Admin 1.4 changes
 -

 Key: FELIX-3176
 URL: https://issues.apache.org/jira/browse/FELIX-3176
 Project: Felix
  Issue Type: Task
  Components: Configuration Admin
Affects Versions:  configadmin-1.2.8
Reporter: Felix Meschberger
Assignee: Felix Meschberger
 Fix For: configadmin-1.4.0


 As part of the Residential Specification 4.3 the Configuration Admin Service 
 will be updated to Version 1.4 with the following changes (from the spec):
 • Allow multiple bundles to register with the same PID to access to the same 
 configuration, see
 Location Binding.
 • Extended Configuration Permission with a location name so that it can be 
 used to prevent access
 to Configurations marked with a certain location, enabling regions, see 
 Regions.
 Our implementation should be adapted to continue to serve as the RI

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-2096) Check MetaTypeProvider.getObjectClassDefinition(String, String) specification compliance

2011-10-22 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-2096?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13133399#comment-13133399
 ] 

Felix Meschberger commented on FELIX-2096:
--

As of Rev. 1187706 the getObjectClassDefinition throws an 
IllegalArgumentException if either id is empty or null or no localized 
ObjectClassDefinition for the ID can be found. Null is never returned.

 Check MetaTypeProvider.getObjectClassDefinition(String, String) specification 
 compliance
 

 Key: FELIX-2096
 URL: https://issues.apache.org/jira/browse/FELIX-2096
 Project: Felix
  Issue Type: Task
  Components: Metatype Service, Specification compliance
Affects Versions: metatype-1.0.4
Reporter: Felix Meschberger
Assignee: Felix Meschberger

 I have been running the Apache Felix Metatype Service implementation through 
 the OSGi CT and found an issue with the 
 MetaTypeProvider.getObjectClassDefinition(String id, String locale) method as 
 used in the testMetaTypeProvider test.
 The method is defined in Section 105.13.4.2 in the R4.2 Compendium 
 specification to:
  * either return an ObjectClassDefinition for the requested id and locale
  * or throw an IllegalArgumentException if either id or the locale is invalid
 THe CT test calls the getObjectClassDefinition three times:
 (1)  getObjectClassDefinition(, du);
  Expects null, but the id here is definitely invalid (empty string) and not 
  defined, thus an exception might be more appropriate
  Our implementation returns null (which is presumably wrong) but passes the 
  test
 (2) getObjectClassDefinition(com.acme.23456789, abc);
  Expects an exception due to the locale abc not provided as a file
  Our implementation returns null because the id com.acme.23456789 is not 
  declared
 Here an exception is probably really expected because the id is not declared. 
 It may be expected due to the missing locale.
 (3) getObjectClassDefinition(com.acme.foo, du)
 This test should pass as expected
 A question regarding invalidity is in place:
   * What does invalid mean for the id ? Empty string ? Undefined/Undeclared 
 ObjectClassDefinition ?
   * What does invalid mean for the locale ? This is tricky, since locales 
 form an implicit inheritance hierarchy and even though
  translations for an exact locale may not be provided, such 
 translations may be provided by the parent. And the default
  definitions should probably be the root of this tree. E.g. given the 
 locale is de_CH and translations exist for de, it
  is IMHO expected to get a translation for de instead of de_CH.
 NB: Returning null as our implementation does is probably definitely wrong 
 according to the spec, since null is not defined to be a valid result.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-2880) The Webconsole does not handle VectorPrimitiveWrapper

2011-10-22 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-2880?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13133403#comment-13133403
 ] 

Felix Meschberger commented on FELIX-2880:
--

Still strange, I cannot reproduce this issue. I have added your sample AD to 
an existing metatype.xml and get the editor incl. the +/- as expected. I am 
using Web Console 3.1.6.

 The Webconsole does not handle VectorPrimitiveWrapper
 ---

 Key: FELIX-2880
 URL: https://issues.apache.org/jira/browse/FELIX-2880
 Project: Felix
  Issue Type: Bug
  Components: Web Console
Reporter: Peter Kriens

 An AD like:
 AD name='Ints' id='ints' cardinality='-2147483648' required='true' 
 type='Integer'/
 Should be edited as a list and returned as a VectorInteger. However, this 
 shows as a  single integer in the webconsole, not a list editor. I guess it 
 gets confused with primiitves?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3182) Update to use parent POM 2.1

2011-10-22 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3182?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13133441#comment-13133441
 ] 

Felix Meschberger commented on FELIX-3182:
--

Nothing to worry about. This setup is quite custom in Java-based project. As 
long as the required files exist in the final build - source and binary.

If you build with the apache-release profile,which is the case for a release 
build, the source distro is created with the correct files.

 Update to use parent POM 2.1
 

 Key: FELIX-3182
 URL: https://issues.apache.org/jira/browse/FELIX-3182
 Project: Felix
  Issue Type: Task
  Components: Metatype Service
Affects Versions: metatype-1.0.4
Reporter: Felix Meschberger
Assignee: Felix Meschberger
 Fix For:  metatype-1.0.6


 Make use of the 2.1 parent POM to leverage new plugins and remote resources 
 for the legal files

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3045) new webconsole plugin - dependency finder

2011-10-21 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13132940#comment-13132940
 ] 

Felix Meschberger commented on FELIX-3045:
--

Sorry for the delay ... lost track of it.

 new webconsole plugin - dependency finder
 -

 Key: FELIX-3045
 URL: https://issues.apache.org/jira/browse/FELIX-3045
 Project: Felix
  Issue Type: New Feature
  Components: Web Console
Reporter: Justin Edelson
Assignee: Felix Meschberger
 Attachments: FELIX-3045-real.patch


 I recently put together a small web console plugin which allows a user to 
 enter a list of package or class names and get back the list of bundles which 
 export those packages (deduping the list first) as well as a dependency block 
 to insert into a Maven pom.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3177) Remove temporary inclusion of OSGi classes

2011-10-20 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3177?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13131563#comment-13131563
 ] 

Felix Meschberger commented on FELIX-3177:
--

Added first shot of the implementation in Rev. 1186765:

 - CM_LOCATION_CHANGED event
 - reassign config on location changes
 - support for new configuration Regions
 - Factory (internal mechanism) are not location bound any more
 - Each factory configuration instance is individually bound
 - adapt integration tests
 - temporarily include ConfigurationEvent and ConfigurationPermission
   classes from the OSGi repo for two new constants
 - export cm package at version 1.4 (and reimport [1.4,1.5))

The inclusion of two OSGi Alliance classes will be reverted by FELIX-3177.

 Remove temporary inclusion of OSGi classes
 --

 Key: FELIX-3177
 URL: https://issues.apache.org/jira/browse/FELIX-3177
 Project: Felix
  Issue Type: Task
  Components: Configuration Admin
Affects Versions: configadmin-1.4.0
Reporter: Felix Meschberger

 Once the OSGi Alliance releases an official build of the Configuration Admin 
 1.4 API classes to the central maven repository, the temporary inclusion of 
 the ConfigurationEvent and ConfigurationPermission classes should be reverted.
 Also the export and import versions of the Configuration Admin package should 
 be deduced from the official library (again).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3176) Implement Configuration Admin 1.4 changes

2011-10-20 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3176?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13131618#comment-13131618
 ] 

Felix Meschberger commented on FELIX-3176:
--

Added first shot of the implementation in Rev. 1186765: 

 - CM_LOCATION_CHANGED event 
 - reassign config on location changes 
 - support for new configuration Regions 
 - Factory (internal mechanism) are not location bound any more 
 - Each factory configuration instance is individually bound 
 - adapt integration tests 
 - temporarily include ConfigurationEvent and ConfigurationPermission 
   classes from the OSGi repo for two new constants 
 - export cm package at version 1.4 (and reimport [1.4,1.5)) 

The inclusion of two OSGi Alliance classes will be reverted by FELIX-3177.

 Implement Configuration Admin 1.4 changes
 -

 Key: FELIX-3176
 URL: https://issues.apache.org/jira/browse/FELIX-3176
 Project: Felix
  Issue Type: New Feature
  Components: Configuration Admin
Affects Versions: configadmin-1.2.10
Reporter: Felix Meschberger
Assignee: Felix Meschberger
 Fix For: configadmin-1.4.0


 As part of the Residential Specification 4.3 the Configuration Admin Service 
 will be updated to Version 1.4 with the following changes (from the spec):
 • Allow multiple bundles to register with the same PID to access to the same 
 configuration, see
 Location Binding.
 • Extended Configuration Permission with a location name so that it can be 
 used to prevent access
 to Configurations marked with a certain location, enabling regions, see 
 Regions.
 Our implementation should be adapted to continue to serve as the RI

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3176) Implement Configuration Admin 1.4 changes

2011-10-20 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3176?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13131634#comment-13131634
 ] 

Felix Meschberger commented on FELIX-3176:
--

Added a few tests for expected ConfigurationEvents in Rev. 1186810

 Implement Configuration Admin 1.4 changes
 -

 Key: FELIX-3176
 URL: https://issues.apache.org/jira/browse/FELIX-3176
 Project: Felix
  Issue Type: New Feature
  Components: Configuration Admin
Affects Versions: configadmin-1.2.10
Reporter: Felix Meschberger
Assignee: Felix Meschberger
 Fix For: configadmin-1.4.0


 As part of the Residential Specification 4.3 the Configuration Admin Service 
 will be updated to Version 1.4 with the following changes (from the spec):
 • Allow multiple bundles to register with the same PID to access to the same 
 configuration, see
 Location Binding.
 • Extended Configuration Permission with a location name so that it can be 
 used to prevent access
 to Configurations marked with a certain location, enabling regions, see 
 Regions.
 Our implementation should be adapted to continue to serve as the RI

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3126) SCR activates a service component while the containing bundle is stopping.

2011-10-11 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3126?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13125247#comment-13125247
 ] 

Felix Meschberger commented on FELIX-3126:
--

Committed a fix in Rev. 1181999 which prevents the component from being enabled 
or activated while the bundle is being stopped.

Can you please check, whether this helps you use case ? Thanks.

 SCR activates a service component while the containing bundle is stopping.
 --

 Key: FELIX-3126
 URL: https://issues.apache.org/jira/browse/FELIX-3126
 Project: Felix
  Issue Type: Bug
  Components: Declarative Services (SCR)
Affects Versions:  scr-1.6.0
 Environment: FELIX-3.2.2, SCR-1.6.0
Reporter: Soren Petersen
Assignee: Felix Meschberger
 Fix For: scr-1.6.2


 I've got the following setup:
 Bundle 1: Implements a pattern similar to the extender pattern. A bundle 
 tracker monitors bundles containing a certain configuration entry. Each time 
 a bundle with the coniguration entry enters or leaves the ACTIVE state, a 
 service of the interface com.example.bundle1.Bundle1Service is unregistered 
 and a new service with the same interface is re-registered.
 Bundle 2: Has an immediate service component with the following configuration:
 component name=Bundle2Component immediate=true 
 xmlns=http://www.osgi.org/xmlns/scr/v1.1.0;
   
   implementation class=com.example.bundle2.TestComponent /
   service
   provide interface=java.lang.Object /
   /service
   reference 
   name=bundle1service 
   interface=com.example.bundle1.Bundle1Service
   cardinality=1..1 
   policy=static 
   bind=setBundle1Service /
 /component
 Situation: Both bundles have been started. The service component from bundle 
 2 is active and the reference is bound to the current Bundle1Service exported 
 from bundle 1.
 Now, when i stop bundle 2 the following occur:
 1. The state of bundle 2 is changed to STOPPING
 2. The state change is discovered by the service tracker in bundle 1 which 
 causes it to unregister the Bundle1Service and then register a a new 
 Bundle1Service.
 3. The SCR discovers that the bundle1service reference of the component has 
 become unsatisfied and deactivates the component.
 4. The SCR discovers that the bundle1service reference of the component has 
 become satisfied (with a new service) and activates the component.
 5. The SCR tries to export the newly activated component as a service, but 
 fails since the bundle is stopping.
 The problem seems to be that SCR has not discovered that the bundle is 
 STOPPING and disabled the component. A simple fix might be to check whether 
 to disable the component based on bundle status before activating a new 
 instance of the component.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-2992) scr 1.6.1-SNAPSHOT: impossible to build due to obsolete dependencies

2011-10-11 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-2992?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13125273#comment-13125273
 ] 

Felix Meschberger commented on FELIX-2992:
--

The project is setup to get the 0.6.0 versions from the OPS4J repository and 
thus may build.

I tried to upgrade to the latest 2.2.0 release but I was not satisfied with the 
result:
  * Some functionality is destructively changed like missing support for 
in-container @Before and @After as well as no support for providing the 
BundleContext to the @Before method any more
  * In 0.6.0 the test code bundle exports its classes such that I could set up 
TinyBundles making use of those classes; this is not the case any longer 
requiring more complex setup for this sharing (I need TinyBundles to be able to 
properly test the processing of the descriptors in various custom built bundles)

All in all, I aborted trying to migrate for now. If someone comes up with  a 
patch for this migration, I would be happy to apply it, though.

 scr 1.6.1-SNAPSHOT: impossible to build due to obsolete dependencies
 

 Key: FELIX-2992
 URL: https://issues.apache.org/jira/browse/FELIX-2992
 Project: Felix
  Issue Type: Bug
  Components: Declarative Services (SCR)
Affects Versions:  scr-1.6.0
Reporter: Andrei Pozolotin

 scr: impossible to build due to obsolete dependencies
 errors:
 [INFO] 
 
 [INFO] Building Apache Felix Declarative Services 1.6.1-SNAPSHOT
 [INFO] 
 
 [WARNING] The POM for org.ops4j.pax.exam:pax-exam:jar:0.6.0 is missing, no 
 dependency information available
 [WARNING] The POM for org.ops4j.pax.exam:pax-exam-junit:jar:0.6.0 is missing, 
 no dependency information available
 [WARNING] The POM for org.ops4j.pax.exam:pax-exam-container-default:jar:0.6.0 
 is missing, no dependency information available
 [WARNING] The POM for biz.aQute:bndlib:jar:0.0.313 is missing, no dependency 
 information available
 [INFO] 
 
 [INFO] BUILD FAILURE
 [INFO] 
 
 [INFO] Total time: 0.875s
 [INFO] Finished at: Fri Jun 10 13:04:54 CDT 2011  
   
 
 [INFO] Final Memory: 3M/61M  
 indeed:
 current maven central does not contain these artifacts:
 http://search.maven.org/#search|ga|1|bndlib
 http://search.maven.org/#search|ga|1|pax%20exam

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3087) Given invalid value, but the property isn't invalid.

2011-10-09 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3087?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13123689#comment-13123689
 ] 

Felix Meschberger commented on FELIX-3087:
--

In Rev. 1180605:
* Fix wrong Character/Char type conversion
* add unit tests
* refactor value conversion to do it during validation, which allows to fail 
value conversion on a component-level instead of a descriptor file level

 Given invalid value, but the property isn't invalid.
 

 Key: FELIX-3087
 URL: https://issues.apache.org/jira/browse/FELIX-3087
 Project: Felix
  Issue Type: Bug
  Components: Declarative Services (SCR)
Affects Versions:  scr-1.6.0
Reporter: Yasuhiro Kawame
Assignee: Felix Meschberger

 Given the following XML, the value of the property will be invalid.
 But this property is a valid property, with a value of char 'a'.
 ?xml version=1.0 encoding=UTF-8?
   scr:component xmlns:scr=http://www.osgi.org/xmlns/scr/v1.1.0;
 implementation class=DummyClass / 
 property name=test.property.Character type=Character value=ab /
   /scr:component

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-3039) SCR cleans up delayed service components too aggressively

2011-10-09 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-3039?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13123732#comment-13123732
 ] 

Felix Meschberger commented on FELIX-3039:
--

Actually the specification states that delayed components have to be 
deactivated and destroyed if not used any longer:

  If the service registered by a component configuration becomes unused
  because there are no more bundles using it, then SCR should deactivate
  that component configuration. This allows SCR implementations to eagerly
  reclaim activated component configurations. (112.5.4, Delayed Components)

While should of course is not a requirement, I understand it as a strong 
recommendation. On the other hand, since this still allows the implementation 
to keep the components alive, it might make sense to keep them alive.

Will consider an option ds.dontDisposeInstances as follows:
  * default: false -- to implement the spec recommendation
  * base (static) configuration by framework property 
(BundleContext.getProperty)
  * dynamic configuration through Configuration Admin (if available)

 SCR cleans up delayed service components too aggressively
 -

 Key: FELIX-3039
 URL: https://issues.apache.org/jira/browse/FELIX-3039
 Project: Felix
  Issue Type: Bug
  Components: Declarative Services (SCR)
Reporter: Neil Bartlett
Priority: Minor

 In the case of an ordinary delayed service component, SCR immediately 
 deactivates and destroys the component when its service is released by the 
 consumer. In cases where a consumer occasionally binds and invokes the 
 service (e.g. EventAdmin) this can cause the component to be continuously 
 destroyed and recreated.
 Note that Equinox's DS offers a little more control, we can choose either to 
 immediately clean up or never clean up (and the default is never). This is 
 still not very satisfactory though.
 I think ideally there should be a configurable timeout, so that a component 
 will be cleaned up only if it is not used for some time. I also think the 
 default should be quite long, e.g. many minutes.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (FELIX-2895) Allow the use of a property to tell SCR to always discover Service Component files even if there's no wildcard in the name

2011-10-09 Thread Felix Meschberger (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-2895?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13123740#comment-13123740
 ] 

Felix Meschberger commented on FELIX-2895:
--

Thinking about it I come to the conclusion, that using getResource is really 
wrong. So I think we should go the full length and completely remove the use of 
getResource

 Allow the use of a property to tell SCR to always discover Service Component 
 files even if there's no wildcard in the name
 --

 Key: FELIX-2895
 URL: https://issues.apache.org/jira/browse/FELIX-2895
 Project: Felix
  Issue Type: Improvement
  Components: Declarative Services (SCR)
Reporter: Justin Edelson
 Attachments: FELIX-2895-fmeschbe.patch, FELIX-2895.patch, 
 FELIX-2895_take2.patch


 The current version of SCR will use the API method getResource() to get the 
 service component descriptor if the Service-Component header does not contain 
 a wildcard. This precludes the discovery of DS components in attached 
 fragment bundles. From the DS spec:
 Section 112.4:
 Component descriptions are defined in XML documents contained in a bundle
 and any attached fragments.
 Section 112.4.1:
 The last component of each path in the Service-Component header may use
 wildcards so that Bundle.findEntries can be used to locate the XML document
 within the bundle and its fragments
 A Service-Component manifest header specified in a fragment is ignored by
 SCR. However, XML documents referenced by a bundle's Service-Component
 Note the use of the word may in the first sentence. It does not say that 
 findEntries() should/must *only* be used if there's a wildcard.
 As such, I believe this is within the spec, albeit not backwards compatible 
 which is why I'm proposing to use a framework property.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira