OK Vincent,
Good that work.
In fact, there is already a wiki page around this topic:
http://servicemix.apache.org/SMX4KNL/43-logging-system.html
But it deals mainly from a user point of view, not a dev one. I will
upgrade it.
Sorry, I was thinking that you want to force the usage of log4j (and not
through the usage of slf4j bundle).
Regards
JB
Vincent GIRARDREYDET wrote:
Jean-Baptiste,
Looking at the samples in the gshell, I have seen that they use the
slf4j interface.
I have added slf4j-api and slf4j-log4j13 as provided dependencies, and I
can compile, package and deploy.
Note that I had no use to add an <Import-Package> directive, as the BND
tool takes care of it for me :-).
I have not understood the dull picture of logging in SMX4, but now it
works, and I can still use plain old log4j configuration files to
configure my loggin. So everythinkg seems to be fine now.
Thanks for your time. Hope that this post will help other people having
the same troubles ;-). Is there any way we could get this information
posted in the wiki ?
Jean-Baptiste Onofré a écrit :
Vincent,
if you package your services as OSGi bundles, I guess that you use the
Felix BND maven plugin.
In your POM, you should have some section looking like:
<Export-Package>my*;version=${version}</Export-Package>
<Import-Package>...</Import-Package>
In your case, you have two solution:
- embed log4j in the bundle classpath using
<Embed-Dependency>log4j;scope=runtime</Embed-Dependency>
- add a log4j import package but it's require that a OSGi bundle is
already available into kernel/karaf.
Could you provide your complete pom.xml, I can review it if you want.
Regards
JB
Vincent GIRARDREYDET wrote:
Hi Jean-Baptiste,
I deploy everything as OSGi bundles. Some services are OSGi services,
some other are NMR services.
My dependencies are as generated by the spring-osgi-bundle artifact.
If you have a suggestion for a correct dependency, I would greatly
appreciate.
I'm not even at the stage of configuring the import package
definition (although I guess I would import org.apache.log4j). Here I
have compilation problems.
I have tried the following dependency alone:
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.15</version>
<type>jar</type>
<scope>provided</scope>
</dependency>
But then maven complains about unresolved indirect dependencies:
com.sun.jmx:jmxri:jar:1.2.1:provided
Help !
Jean-Baptiste Onofré a écrit :
Hi Vincent,
do you deploy your service as a OSGi service ?
If it's the case, could you provide your import package definition
(from the POM) ?
Anyway, in your pom, I see that the log4j dependency is scoped as
test, is it normal ?
Regards
JB
--
Jean-Baptiste Onofré
---------------------------------
HomePage
http://www.nanthrax.net
---------------------------------
Contacts
[email protected]
[email protected]
---------------------------------
OpenSource
BuildProcess/AutoDeploy
http://buildprocess.sourceforge.net
Apache ServiceMix
http://servicemix.apache.org
-----------------------------------
PGP : 17D4F086