Results 1 to 8 of 8

Thread: How to read resolver report

  1. #1
    Join Date
    Apr 2010
    Posts
    15

    Default How to read resolver report

    What is the problem here? Which of the three bundles does have a problem?
    The report is really hard to interpret.

    Resolver report:
    An Import-Package could not be resolved. Caused by missing constraint in bundle <com.xxxxx.xxxxx.server.security_1.0.0>
    constraint: <Import-Package: org.springframework.security.ldap.search; version="0.0.0">
    Uses violation: <Import-Package: org.springframework.ldap; version="[1.3.0.RELEASE,1.4.0)"> in bundle <org.springframework.security.ldap_3.0.2.RELEASE >
    Resolver reported uses conflict for import

  2. #2
    Join Date
    Oct 2008
    Location
    Winchester, UK
    Posts
    535

    Default

    I agree these kind of diagnostics are a pretty cryptic. We've put a lot of work in to making them simpler, but this one is still terse.

    It is not at all obvious which bundle is causing the problem. Indeed it may be due to a combination of bundles.

    However, the general principle is that a uses constraint violation always stems from an attempt to wire a related collection of bundles to two different versions of a given package. So the first thing to check is how many versions of the package org.springframework.ldap are present.

    You can use the admin console (OSGi tab) to explore the state dump in detail and see how many versions of the various packages were available when the resolution was attempted.

    Please let us know how you get on. If you can capture a simple test which reproduces this error, we can look at further improving our diagnostics in the fulness of time.
    Glyn Normington
    SpringSource

  3. #3
    Join Date
    Apr 2010
    Posts
    15

    Default

    On the OSGi State tab, i do not see the any of the bundles i put in the repository/usr directory and therefore i have no information about how many of the same packages are installed. what can i do or do i have any misconfiguration here?

    It seems to be complicated to extract a simple usecase here since we want to use spring security and spring ldap to build a security infrastructure.

  4. #4
    Join Date
    Oct 2008
    Location
    Winchester, UK
    Posts
    535

    Default

    Please make sure you are examining the state dump which was generated when the resolver error occurred. If you view the "live" state, it won't contain anything that was brought in during the failed resolution. (This process is explained on a separate thread - if you can't find it and are interested, let me know.)
    Glyn Normington
    SpringSource

  5. #5
    Join Date
    Apr 2010
    Posts
    15

    Default

    okay i found detailed information:

    therein i see that spring security is unsresolved (and implecitly also my application):

    Code:
    1271841278799  	 	org.springframework.security.ldap  	3.0.2.RELEASE  	  	 Unresolved
    If i click on unresoved, i get the following information, which is not that helpful:

    Code:
    Bundle Symbolic Name  	org.springframework.security.ldap
    Bundle Version 	3.0.2.RELEASE
    Bundle ID 	1271841278799
    Hosts/Fragments 	NA
    State 	Unresolved
    
    Cannot resolve: org.springframework.security.ldap
        Unsatisfied leaf constraints:

  6. #6
    Join Date
    Oct 2008
    Location
    Winchester, UK
    Posts
    535

    Default

    I'm glad you can now explore the state dump. The simplest thing to look for is for multiple versions of the same bundle, especially any which export LDAP-related packages. You can also click on an exported package to see all the exporters of the package.

    Does that help at all?
    Glyn Normington
    SpringSource

  7. #7
    Join Date
    Apr 2010
    Posts
    15

    Default

    I do not see duplicate package entries here. But what I had to do is to deploy also spring core, beans, etc. in version 2.5.6.SEC01 in repository/usr (beside of 3.0.2.RELEASE in repository/ext) because of the dependency of spring ldap.

    what i have seen in SpringSource EBR is "The following imports are not satisfied by the above bundles." when executing a detailed dependency analysis.

    Unfortunately, i do not understand what i have to do, when i get this message.

  8. #8
    Join Date
    Oct 2008
    Location
    Winchester, UK
    Posts
    535

    Default

    You cannot mix two versions of Spring as this is almost certain to give rise to the very problems you are seeing. So, since Spring LDAP currently requires a Spring framework version less than 3, you'll have to keep Spring 2.5.6.SEC01 and delete Spring 3.0.2.RELEASE. I recommend replacing Spring in repository/ext.
    Glyn Normington
    SpringSource

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •