[ 
https://issues.apache.org/jira/browse/OLINGO-1140?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Michael Bolz updated OLINGO-1140:
---------------------------------
    Affects Version/s:     (was: (Java) V4 4.3.0)
                       V2 2.0.8

> Support of OSGi bundle wrapping
> -------------------------------
>
>                 Key: OLINGO-1140
>                 URL: https://issues.apache.org/jira/browse/OLINGO-1140
>             Project: Olingo
>          Issue Type: New Feature
>          Components: odata2-core
>    Affects Versions: V2 2.0.8
>            Reporter: Johannes Hoenger
>
> *Context*
> We as OSGi developers face a challenge when using third-party libraries like 
> Olingo that OSGi bundles may not be provided. 
> Since Olingo does also not provide a bundle we opted for the most common 
> solution. We wrapped the Olingo library using [Apache 
> Felix|http://felix.apache.org/documentation/subprojects/apache-felix-maven-bundle-plugin-bnd.html].
> For more details about wrapping please refer to this link [Wrapping Libraries 
> to OSGi Bundles|http://bnd.bndtools.org/chapters/390-wrapping.html] and 
> [Creating wrapper OSGi 
> bundles|https://cwiki.apache.org/confluence/display/SMX4/1.+Beginner+-+Creating+wrapper+OSGi+bundles].
> *Request*
> An inherent property of the wrapping is that the namespace of the wrapped 
> artifact changes. This is usually not an issue. 
> However, when in the code is a package name hardcoded which leads to issue in 
> our software component.
> The issue occurs at line 63 in the class RuntimeDelegate. Please refer to the 
> following link
> https://github.com/apache/olingo-odata2/blob/b33cdc411ac8731162266ebb19ae97a90ca88be9/odata2-lib/odata-api/src/main/java/org/apache/olingo/odata2/api/rt/RuntimeDelegate.java#L51-L76
> The aforementioned lined throws in our OSGi components the following exception
> {code:title=exception.log|borderStyle=solid}
> Exception: 
> org.apache.olingo.odata2.api.rt.RuntimeDelegate$RuntimeDelegateException: 
> java.lang.ClassNotFoundException: 
> org.apache.olingo.odata2.core.rt.RuntimeDelegateImpl cannot be found by 
> <wrapping container name>
> org.apache.olingo.odata2.api.rt.RuntimeDelegate$RuntimeDelegateException: 
> java.lang.ClassNotFoundException: 
> org.apache.olingo.odata2.core.rt.RuntimeDelegateImpl cannot be found by 
> <wrapping container name>
>       at 
> org.apache.olingo.odata2.api.rt.RuntimeDelegate.getInstance(RuntimeDelegate.java:73)
>       at 
> org.apache.olingo.odata2.api.rt.RuntimeDelegate.extractExceptionMessage(RuntimeDelegate.java:236)
>       at 
> org.apache.olingo.odata2.api.exception.ODataMessageException.getMessage(ODataMessageException.java:127)
>       at java.lang.Throwable.getLocalizedMessage(Throwable.java:391)
>       at java.lang.Throwable.toString(Throwable.java:480)
>       at java.lang.Throwable.<init>(Throwable.java:311)
>       at java.lang.Exception.<init>(Exception.java:102)
>       at 
> org.apache.olingo.odata2.api.exception.ODataException.<init>(ODataException.java:42)
>       at 
> org.apache.olingo.odata2.api.exception.ODataMessageException.<init>(ODataMessageException.java:75)
>       at 
> org.apache.olingo.odata2.api.exception.ODataMessageException.<init>(ODataMessageException.java:63)
>       at 
> org.apache.olingo.odata2.api.edm.EdmException.<init>(EdmException.java:48)
>       at 
> org.apache.olingo.odata2.api.edm.EdmLiteralException.<init>(EdmLiteralException.java:43)
>       at 
> org.apache.olingo.odata2.core.edm.EdmSimpleTypeFacadeImpl.parseUriLiteral(EdmSimpleTypeFacadeImpl.java:76)
>       at 
> org.apache.olingo.odata2.core.uri.expression.Tokenizer.checkForLiteral(Tokenizer.java:171)
>       at 
> org.apache.olingo.odata2.core.uri.expression.Tokenizer.tokenize(Tokenizer.java:153)
>       at 
> org.apache.olingo.odata2.core.uri.expression.FilterParserImpl.parseFilterString(FilterParserImpl.java:89)
>       at 
> org.apache.olingo.odata2.core.uri.expression.FilterParserImpl.parseFilterString(FilterParserImpl.java:80)
> {code}
> This line is, as far as we can tell, the only line which is incompatible with 
> the OSGi wrapping approach. Is is possible to provide a solution for this 
> case?



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to