Red Hat Bugzilla – Bug 826776
Patch for log4j to change OSGi Bundle-SymbolicName to org.apache.log4j
Last modified: 2012-06-26 17:31:35 EDT
Created attachment 587876 [details]
Description of problem:
META-INF/MANIFEST.MF has a couple of problems:
In the Import-Package section, it tries to import some packages that it provides. It also tries to import some packages that are not provided by any other package in fedora. Some of these are set to optional, but eclipse-pdebuild fails with an unsatisfied import message for each. In any case, the pom for 1.2.17  no longer tries to import these packages.
There's also the Bundle-SymbolicName. It's set to log4j (probably from either groupId or ArtifactId in pom), but there are some parts of eclipse-wtp-webservices that I'm trying to build, that are looking for org.apache.log4j, which leads me to believe that that's what it should be.
Description of patch:
Git formatted patch, patching git://pkgs.fedoraproject.org/log4j (I'm assuming that that's a good way to submit patches? I've done 826327 and 826147 the same way)
Hmm, I'll look into updating log4j to 1.2.17 at least in rawhide, depending on the compatibility possibly as an update to F17.
That will fix your problem partially, however I am not sure I can help with the Bundle-Symbolicname. I agree that's what it should be, but upstream produces jars with that name set to "log4j". There is an upstream bug about this, but I'd not be too eager to patch our log4j before upstream accepts that patch. It's been a while since any action on that bug, so it might be a good idea to poke them.
I'm assuming you've poked them then: the bug was updated today, with the changes accepted. The Bundle-SymbolicName has been changed in upstream trunk (not in 1.2.17 yet though).
Haha, I would love to get credit for that one :-) Perhaps a coincidence?
I am fine to fix symbolic name to a new one in trunk now even for F17 in case we can't update. I couldn't find any package using osgi(log4j) so this seems safe to do. Any new users will just have to be modified for new symbolic name in the worst case (an upstreamable change in any case).
New log4j needs a some new dependencies so I might decide to go ahead and just change the symbolicname and fix the manifest for now. Will try to keep you posted
I've built this for rawhide:
It's a little bit different from your patch, since we do have javax.jms implementation already in Fedora (geronimo-jms). It might need an OSGI bundle metadata, but that's for another bug I guess. But bundle name is fixed. If this is going to be satisfactory we can probably backport to F17. If not, we can work on it in rawhide until it's ready.
This works for me in rawhide:
So, for f17, should we be looking at just applying the patch to the current 1.2.16 or backport 1.2.17? Either one will be fine for my purposes anyway. I tried to build from your rawhide spec into f17 locally but I wasn't very successful with it!
log4j-1.2.17-2.fc17 has been submitted as an update for Fedora 17.
* should fix your issue,
* was pushed to the Fedora 17 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing log4j-1.2.17-2.fc17'
as soon as you are able to.
Please go to the following url:
then log in and leave karma (feedback).
log4j-1.2.17-2.fc17 has been pushed to the Fedora 17 stable repository. If problems still persist, please make note of it in this bug report.