You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@felix.apache.org by Michael Hess <MH...@orga-systems.com> on 2010/09/14 14:00:09 UTC

Classloading for JAXB

Hi list,

I seem to have a rather specific problem with using JAXB inside the Felix 
framework.

Here's my situation:

- Felix Framework 2.0.0
- Java 1.6.0_18
- JAXB included in the JDK (2.1.10 according to xjc -version)

I want to use JAXB in a bundle I am developing. 

Now, I first stumbled into the typical error everybody has, where you do 
not set the classloader and JAXB is missing its ObjectFactory.class.
The solution to this issue is rather straight forward, as you have to 
provide the correct classloader to JAXB. So what I do is the following:

exchange:

JAXBContext jc = JAXBContext.newInstance(packageName);

with

JAXBContext jc = JAXBContext.newInstance(packageName, 
ObjectFactory.class.getClassLoader());

Usually that seems to be the moment where everybody else gets lucky, and 
has their problem solved. Unfortunately I did not get that lucky. :-/
While this helps to get over the aforementioned problem, I am now stuck 
with something that nobody else so far seems to have encountered. During 
unmarshalling I get an CNFE for a part of the JAXB implementation:

java.lang.NoClassDefFoundError: 
com/sun/xml/internal/bind/DatatypeConverterImpl
        at 
com.orga.my.package.State_JaxbXducedAccessor_ordinal.parse(TransducedAccessor_field_Integer.java:57)
        at 
com.sun.xml.internal.bind.v2.runtime.unmarshaller.StructureLoader.startElement(StructureLoader.java:191)
        at 
com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallingContext._startElement(UnmarshallingContext.java:470)
        at 
com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallingContext.startElement(UnmarshallingContext.java:448)
        at 
com.sun.xml.internal.bind.v2.runtime.unmarshaller.ValidatingUnmarshaller.startElement(ValidatingUnmarshaller.java:79)
        at 
com.sun.xml.internal.bind.v2.runtime.unmarshaller.SAXConnector.startElement(SAXConnector.java:137)
        at 
com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501)
        at 
com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400)
        at 
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2755)
        at 
com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
        at 
com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140)
        at 
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:511)
        at 
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:808)
        at 
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
        at 
com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:119)
        at 
com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
        at 
com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
        at 
com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:200)
        at 
com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:173)
        at 
javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:137)
        at 
javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:184)
        at 
com.orga.my.package.MyJaxbClient.unmarshal(MyJaxbClient.java:312)
        at 
com.orga.my.package.MyJaxbClient.reconfigure(MyJaxbClient.java:164)
        at 
com.orga.my.package.MyJaxbClient.initialize(MyJaxbClient.java:118)
        at 
com.orga.my.package.internal.CamBundleActivator.startInternal(CamBundleActivator.java:152)
        at 
com.orga.my.package.util.osgi.BaseBundleActivator.start(BaseBundleActivator.java:88)
        at 
org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:667)
        at 
org.apache.felix.framework.Felix.activateBundle(Felix.java:1699)
        at org.apache.felix.framework.Felix.startBundle(Felix.java:1621)
        at 
org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1076)
        at 
org.apache.felix.framework.StartLevelImpl.run(StartLevelImpl.java:264)
        at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.ClassNotFoundException: 
com.sun.xml.internal.bind.DatatypeConverterImpl
        at 
org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:726)
        at 
org.apache.felix.framework.ModuleImpl.access$100(ModuleImpl.java:60)
        at 
org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1631)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
        ... 32 more

I tried to fix this by using the alternate solution to the "newInstance 
with ClassLoader" call, i.e. by setting the Thread's ContextClassloader to 
the one that is used to load my ObjectFactory class. But this gives me the 
same result.

Now, what I did next, was to fiddle around with the felix's classloader 
configuration inside the config.properties. Adding "sun.*, com.sun.*" to 
the system.packages.extra did not change anything. BUT, adding those to 
the boot delegation property, e.g. 

org.osgi.framework.bootdelegation=sun.*,com.sun.*

Did indeed fix the issue. 

What really puzzles me, is that according to the stack trace I get, 
several subpackages of com.sun.xml.internal.bind are available without the 
change of the boot delegation property. But DatetypeConverter which 
resides directly in that package is not visible to my bundle's CL without 
the aforementioned change to the configuration.

Does anybody have an idea what actually might be going wrong?
Is there a way for me to fix this without changing the boot delegation 
property?

Thanks for any insights!

bye, Michael



The information included in this e-mail and any files transmitted with it is strictly confidential and may be privileged or otherwise protected from disclosure. If you are not the intended recipient, please notify the sender immediately by e-mail and delete this e-mail as well as any attachment from your system. If you are not the intended recipient you are not authorized to use and/or copy this message and/or attachment and/or disclose the contents to any other person.

RE: Classloading for JAXB

Posted by Joel Schuster <jo...@Navsys.com>.
You have five options, you found #2:


 1.  Create a service for your message serializations with the JAXBContext available in only that bundle. My need to do some special DynamicImport-Package: magic.
 2.  Append all the message bundles to the system path - bad form, non-osgi-ish
 3.  Workaround jaxb context and class path loading issues. See my blog for example, also bad form but better than #2: http://joelschuster.blogspot.com/2010/07/real-examples-osgi-classloader.html
 4.  Use a OSGi-ified jaxb bundle (recommended approach #1): http://www.dynamicjava.org/projects/jsr-api/jaxb-osgi
Don't use jaxb for serialization, just xjc for pojoization (recommended approach #2), use XStream instead.



- Joel



-----Original Message-----
From: Michael Hess [mailto:MHess@orga-systems.com]
Sent: Wednesday, September 15, 2010 2:33 AM
To: users@felix.apache.org
Subject: Re: Classloading for JAXB



Hi!



I managed to solve this issue this morning (isn't it wonderful what a hat

full sleep does to you? ;-)), and would like to share my solution with the

rest of you.



The problem was two fold:



1. We use the bnd tool to package our bundles. Aparently bnd does not pick

up on the JAXB dependency when not explicitly specified. Stating an import

for "com.sun.xml.*" did not cause the correct entries to be generated in

the manifest. My guess is, that this is due to some reflection magic that

might be happening under the hood of JAXB. I fixed this, by explicitly

addind the package "com.sun.xml.internal.bind" (without the wildcard) to

the bnd file.



2. Now that the correct import is generated for my bundle, I can use the "

system.packages.extra" property instead of the boot delegation.



So far, everything seems to be working now.



bye, Michael





> Hi list,

>

> I seem to have a rather specific problem with using JAXB inside the

Felix

> framework.

>

> Here's my situation:

>

> - Felix Framework 2.0.0

> - Java 1.6.0_18

> - JAXB included in the JDK (2.1.10 according to xjc -version)

>

> I want to use JAXB in a bundle I am developing.

>

> Now, I first stumbled into the typical error everybody has, where you do



> not set the classloader and JAXB is missing its ObjectFactory.class.

> The solution to this issue is rather straight forward, as you have to

> provide the correct classloader to JAXB. So what I do is the following:

>

> exchange:

>

> JAXBContext jc = JAXBContext.newInstance(packageName);

>

> with

>

> JAXBContext jc = JAXBContext.newInstance(packageName,

> ObjectFactory.class.getClassLoader());

>

> Usually that seems to be the moment where everybody else gets lucky, and



> has their problem solved. Unfortunately I did not get that lucky. :-/

> While this helps to get over the aforementioned problem, I am now stuck

> with something that nobody else so far seems to have encountered. During



> unmarshalling I get an CNFE for a part of the JAXB implementation:

>

> java.lang.NoClassDefFoundError:

> com/sun/xml/internal/bind/DatatypeConverterImpl

>         at

>

com.orga.my.package.State_JaxbXducedAccessor_ordinal.parse(TransducedAccessor_field_Integer.java:57)

>         at

>

com.sun.xml.internal.bind.v2.runtime.unmarshaller.StructureLoader.startElement(StructureLoader.java:191)

>         at

>

com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallingContext._startElement

> (UnmarshallingContext.java:470)

>         at

>

com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallingContext.startElement

> (UnmarshallingContext.java:448)

>         at

>

com.sun.xml.internal.bind.v2.runtime.unmarshaller.ValidatingUnmarshaller.startElement

> (ValidatingUnmarshaller.java:79)

>         at

>

com.sun.xml.internal.bind.v2.runtime.unmarshaller.SAXConnector.startElement(SAXConnector.java:137)

>         at

>

com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501)

>         at

>

com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement

> (XMLNSDocumentScannerImpl.java:400)

>         at

>

com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next

> (XMLDocumentFragmentScannerImpl.java:2755)

>         at

>

com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)

>         at

>

com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140)

>         at

>

com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument

> (XMLDocumentFragmentScannerImpl.java:511)

>         at

>

com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:808)

>         at

>

com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)

>         at

>

com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:119)

>         at

>

com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)

>         at

>

com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)

>         at

>

com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:200)

>         at

>

com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:173)

>         at

>

javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:137)

>         at

>

javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:184)

>         at

> com.orga.my.package.MyJaxbClient.unmarshal(MyJaxbClient.java:312)

>         at

> com.orga.my.package.MyJaxbClient.reconfigure(MyJaxbClient.java:164)

>         at

> com.orga.my.package.MyJaxbClient.initialize(MyJaxbClient.java:118)

>         at

>

com.orga.my.package.internal.CamBundleActivator.startInternal(CamBundleActivator.java:152)

>         at

>

com.orga.my.package.util.osgi.BaseBundleActivator.start(BaseBundleActivator.java:88)

>         at

>

org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:667)

>         at

> org.apache.felix.framework.Felix.activateBundle(Felix.java:1699)

>         at org.apache.felix.framework.Felix.startBundle(Felix.java:1621)

>         at

> org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1076)

>         at

> org.apache.felix.framework.StartLevelImpl.run(StartLevelImpl.java:264)

>         at java.lang.Thread.run(Thread.java:619)

> Caused by: java.lang.ClassNotFoundException:

> com.sun.xml.internal.bind.DatatypeConverterImpl

>         at

>

org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:726)

>         at

> org.apache.felix.framework.ModuleImpl.access$100(ModuleImpl.java:60)

>         at

>

org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1631)

>         at java.lang.ClassLoader.loadClass(ClassLoader.java:248)

>         ... 32 more

>

> I tried to fix this by using the alternate solution to the "newInstance

> with ClassLoader" call, i.e. by setting the Thread's ContextClassloader

to

> the one that is used to load my ObjectFactory class. But this gives me

the

> same result.

>

> Now, what I did next, was to fiddle around with the felix's classloader

> configuration inside the config.properties. Adding "sun.*, com.sun.*" to



> the system.packages.extra did not change anything. BUT, adding those to

> the boot delegation property, e.g.

>

> org.osgi.framework.bootdelegation=sun.*,com.sun.*

>

> Did indeed fix the issue.

>

> What really puzzles me, is that according to the stack trace I get,

> several subpackages of com.sun.xml.internal.bind are available without

the

> change of the boot delegation property. But DatetypeConverter which

> resides directly in that package is not visible to my bundle's CL

without

> the aforementioned change to the configuration.

>

> Does anybody have an idea what actually might be going wrong?

> Is there a way for me to fix this without changing the boot delegation

> property?

>

> Thanks for any insights!

>

> bye, Michael

>

>

>

> The information included in this e-mail and any files transmitted with

it is strictly

> confidential and may be privileged or otherwise protected from

disclosure. If you are not the

> intended recipient, please notify the sender immediately by e-mail and

delete this e-mail as well

> as any attachment from your system. If you are not the intended

recipient you are not authorized

> to use and/or copy this message and/or attachment and/or disclose the

contents to any other person.



The information included in this e-mail and any files transmitted with it is strictly confidential and may be privileged or otherwise protected from disclosure. If you are not the intended recipient, please notify the sender immediately by e-mail and delete this e-mail as well as any attachment from your system. If you are not the intended recipient you are not authorized to use and/or copy this message and/or attachment and/or disclose the contents to any other person.

Re: Classloading for JAXB

Posted by Michael Hess <MH...@orga-systems.com>.
Hi!

I managed to solve this issue this morning (isn't it wonderful what a hat 
full sleep does to you? ;-)), and would like to share my solution with the 
rest of you.

The problem was two fold:

1. We use the bnd tool to package our bundles. Aparently bnd does not pick 
up on the JAXB dependency when not explicitly specified. Stating an import 
for "com.sun.xml.*" did not cause the correct entries to be generated in 
the manifest. My guess is, that this is due to some reflection magic that 
might be happening under the hood of JAXB. I fixed this, by explicitly 
addind the package "com.sun.xml.internal.bind" (without the wildcard) to 
the bnd file.

2. Now that the correct import is generated for my bundle, I can use the "
system.packages.extra" property instead of the boot delegation.

So far, everything seems to be working now.

bye, Michael


> Hi list,
> 
> I seem to have a rather specific problem with using JAXB inside the 
Felix 
> framework.
> 
> Here's my situation:
> 
> - Felix Framework 2.0.0
> - Java 1.6.0_18
> - JAXB included in the JDK (2.1.10 according to xjc -version)
> 
> I want to use JAXB in a bundle I am developing. 
> 
> Now, I first stumbled into the typical error everybody has, where you do 

> not set the classloader and JAXB is missing its ObjectFactory.class.
> The solution to this issue is rather straight forward, as you have to 
> provide the correct classloader to JAXB. So what I do is the following:
> 
> exchange:
> 
> JAXBContext jc = JAXBContext.newInstance(packageName);
> 
> with
> 
> JAXBContext jc = JAXBContext.newInstance(packageName, 
> ObjectFactory.class.getClassLoader());
> 
> Usually that seems to be the moment where everybody else gets lucky, and 

> has their problem solved. Unfortunately I did not get that lucky. :-/
> While this helps to get over the aforementioned problem, I am now stuck 
> with something that nobody else so far seems to have encountered. During 

> unmarshalling I get an CNFE for a part of the JAXB implementation:
> 
> java.lang.NoClassDefFoundError: 
> com/sun/xml/internal/bind/DatatypeConverterImpl
>         at 
> 
com.orga.my.package.State_JaxbXducedAccessor_ordinal.parse(TransducedAccessor_field_Integer.java:57)
>         at 
> 
com.sun.xml.internal.bind.v2.runtime.unmarshaller.StructureLoader.startElement(StructureLoader.java:191)
>         at 
> 
com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallingContext._startElement
> (UnmarshallingContext.java:470)
>         at 
> 
com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallingContext.startElement
> (UnmarshallingContext.java:448)
>         at 
> 
com.sun.xml.internal.bind.v2.runtime.unmarshaller.ValidatingUnmarshaller.startElement
> (ValidatingUnmarshaller.java:79)
>         at 
> 
com.sun.xml.internal.bind.v2.runtime.unmarshaller.SAXConnector.startElement(SAXConnector.java:137)
>         at 
> 
com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501)
>         at 
> 
com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement
> (XMLNSDocumentScannerImpl.java:400)
>         at 
> 
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next
> (XMLDocumentFragmentScannerImpl.java:2755)
>         at 
> 
com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
>         at 
> 
com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140)
>         at 
> 
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument
> (XMLDocumentFragmentScannerImpl.java:511)
>         at 
> 
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:808)
>         at 
> 
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
>         at 
> 
com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:119)
>         at 
> 
com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
>         at 
> 
com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
>         at 
> 
com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:200)
>         at 
> 
com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:173)
>         at 
> 
javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:137)
>         at 
> 
javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:184)
>         at 
> com.orga.my.package.MyJaxbClient.unmarshal(MyJaxbClient.java:312)
>         at 
> com.orga.my.package.MyJaxbClient.reconfigure(MyJaxbClient.java:164)
>         at 
> com.orga.my.package.MyJaxbClient.initialize(MyJaxbClient.java:118)
>         at 
> 
com.orga.my.package.internal.CamBundleActivator.startInternal(CamBundleActivator.java:152)
>         at 
> 
com.orga.my.package.util.osgi.BaseBundleActivator.start(BaseBundleActivator.java:88)
>         at 
> 
org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:667)
>         at 
> org.apache.felix.framework.Felix.activateBundle(Felix.java:1699)
>         at org.apache.felix.framework.Felix.startBundle(Felix.java:1621)
>         at 
> org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1076)
>         at 
> org.apache.felix.framework.StartLevelImpl.run(StartLevelImpl.java:264)
>         at java.lang.Thread.run(Thread.java:619)
> Caused by: java.lang.ClassNotFoundException: 
> com.sun.xml.internal.bind.DatatypeConverterImpl
>         at 
> 
org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:726)
>         at 
> org.apache.felix.framework.ModuleImpl.access$100(ModuleImpl.java:60)
>         at 
> 
org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1631)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
>         ... 32 more
> 
> I tried to fix this by using the alternate solution to the "newInstance 
> with ClassLoader" call, i.e. by setting the Thread's ContextClassloader 
to 
> the one that is used to load my ObjectFactory class. But this gives me 
the 
> same result.
> 
> Now, what I did next, was to fiddle around with the felix's classloader 
> configuration inside the config.properties. Adding "sun.*, com.sun.*" to 

> the system.packages.extra did not change anything. BUT, adding those to 
> the boot delegation property, e.g. 
> 
> org.osgi.framework.bootdelegation=sun.*,com.sun.*
> 
> Did indeed fix the issue. 
> 
> What really puzzles me, is that according to the stack trace I get, 
> several subpackages of com.sun.xml.internal.bind are available without 
the 
> change of the boot delegation property. But DatetypeConverter which 
> resides directly in that package is not visible to my bundle's CL 
without 
> the aforementioned change to the configuration.
> 
> Does anybody have an idea what actually might be going wrong?
> Is there a way for me to fix this without changing the boot delegation 
> property?
> 
> Thanks for any insights!
> 
> bye, Michael
> 
> 
> 
> The information included in this e-mail and any files transmitted with 
it is strictly 
> confidential and may be privileged or otherwise protected from 
disclosure. If you are not the 
> intended recipient, please notify the sender immediately by e-mail and 
delete this e-mail as well
> as any attachment from your system. If you are not the intended 
recipient you are not authorized 
> to use and/or copy this message and/or attachment and/or disclose the 
contents to any other person.

The information included in this e-mail and any files transmitted with it is strictly confidential and may be privileged or otherwise protected from disclosure. If you are not the intended recipient, please notify the sender immediately by e-mail and delete this e-mail as well as any attachment from your system. If you are not the intended recipient you are not authorized to use and/or copy this message and/or attachment and/or disclose the contents to any other person.