Hi,

The blueprint schema [1] blocks the class names containing a '$' character, specifically, a Tclass types expects all the Java class names to match the xsd:NCName pattern.

Thus attempting to load a class such as "a.b.MyClass$MyNestedClass" fails with the schema validation error which as it happens works OK in Spring.

I'd like to propose to drop the NCName restriction and introduce and xsd:string in Tclass instead. IMHO that is the simplest solution - the Java runtime will effectively validate the class name anyway so trying to enforce the Java class name rules in the Blueprint schema may not be ideal.

If people are OK with this proposed update then I can proceed with the change in the next few days

Sergey

[1] https://svn.apache.org/repos/asf/aries/trunk/blueprint/blueprint-api/src/main/resources/org/osgi/service/blueprint/blueprint.xsd

Reply via email to