tomee-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From COURTAULT Francois <Francois.Courta...@gemalto.com>
Subject RE: Re: Re: Re: Re: : Re: Re: : Re: : Re: : Re: Injecting WebserviceContext returns null
Date Mon, 04 Dec 2017 07:49:40 GMT
Hello Romain,

Just for you to know, as promised, I have performed a test against IBM Liberty 17.0.0.3 using
a simple POJO web service endpoint with WebServiceContext injection in it: this way worked.

So to summarize, this code (simple POJO web service endpoint with WebServiceContext injection
in it) worked on Glassfish 4.1.2/5.0, WLS 12.2.1.3 (Weblogic 12c), Wildfly 10.0.1/11.0.0 and
IBM Liberty 17.0.0.3 application servers.

Best Regards.

-----Original Message-----
From: COURTAULT Francois
Sent: lundi 27 novembre 2017 17:01
To: users@tomee.apache.org
Subject: RE: Re: Re: Re: Re: : Re: Re: : Re: : Re: : Re: Injecting WebserviceContext returns
null

Hello Romain,

More familiar with JIRA: https://issues.apache.org/jira/browse/TOMEE-2150

Best Regards.

-----Original Message-----
From: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
Sent: lundi 27 novembre 2017 16:42
To: users@tomee.apache.org
Subject: [++SPAM++]: Re: Re: Re: Re: : Re: Re: : Re: : Re: : Re: Injecting WebserviceContext
returns null

2017-11-27 16:29 GMT+01:00 COURTAULT Francois <Francois.Courtault@gemalto.com>:
> Hello Romain,
>
> Agreed but no so familiar with that.
>
> If the compare has to be set on my branch:
>    - First, I need to create a new one from master, right ?
>    - Second, I have to submit a code change in TomEE, right ?

1. fork tomee repository
2. clone your fork (git clone https://github.com/<you>/tomee) 3. create a local branch
(git branch -b fix/my-super-fix) 4. push on your fork the branch (git push origin fix/my-super-fix)
5. go on github UI and create a PR selecting the branch in github UI and clicking on "New
Pull Request" button

>
> May be it should be easier, for me, to submit an issue on TomEE Jira.

Attaching a patch here is fine as well.

>
> Best Regards.
>
> -----Original Message-----
> From: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
> Sent: lundi 27 novembre 2017 15:59
> To: users@tomee.apache.org
> Subject: [++SPAM++]: Re: Re: Re: : Re: Re: : Re: : Re: : Re: Injecting
> WebserviceContext returns null
>
> base branch = master
> compare = your branch
>
> no?
>
> Romain Manni-Bucau
> @rmannibucau |  Blog | Old Blog | Github | LinkedIn
>
>
> 2017-11-27 15:36 GMT+01:00 COURTAULT Francois <Francois.Courtault@gemalto.com>:
>> Hello Romain,
>>
>> Done.
>> #114 Tomee 7.0.4 issue with CDI interceptor and WebServiceContext
>> resource injection
>>
>> I have still a question, in order to create a pull request, I have to have a base
branch and a compare branch, right ?
>> So I have set the base branch to Master and the compare branch to tome-7.0.4-prepare:
is it correct ?
>>
>> Best Regards.
>>
>> -----Original Message-----
>> From: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
>> Sent: lundi 27 novembre 2017 14:09
>> To: users@tomee.apache.org
>> Subject: [+SPAM+]: Re: Re: : Re: Re: : Re: : Re: : Re: Injecting
>> WebserviceContext returns null
>>
>> PR on master on github yes or patch attached to a jira (but review
>> will be a bit longer)
>>
>> Romain Manni-Bucau
>> @rmannibucau |  Blog | Old Blog | Github | LinkedIn
>>
>>
>> 2017-11-27 12:36 GMT+01:00 COURTAULT Francois <Francois.Courtault@gemalto.com>:
>>> Hello Romain,
>>>
>>> How can I do that ? Pull-request on master branch ? Go directly to JIRA ?
>>>
>>> Best Regards.
>>>
>>> -----Original Message-----
>>> From: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
>>> Sent: lundi 27 novembre 2017 12:05
>>> To: users@tomee.apache.org
>>> Subject: [++SPAM++]: Re: : Re: Re: : Re: : Re: : Re: Injecting
>>> WebserviceContext returns null
>>>
>>> I have to confess I think it is not specified at all (JAX-WS not being updated
for this case) but feel free to propose a fix on github. No blocker to enrich it.
>>>
>>> Romain Manni-Bucau
>>> @rmannibucau |  Blog | Old Blog | Github | LinkedIn
>>>
>>>
>>> 2017-11-27 11:56 GMT+01:00 COURTAULT Francois <Francois.Courtault@gemalto.com>:
>>>> Hello Romain,
>>>>
>>>> OK but this didn't happen with the other App Servers. The only I haven't
tried is Liberty but I can if you want.
>>>> So for me it's a bug, right ?
>>>>
>>>> Best Regards.
>>>>
>>>> -----Original Message-----
>>>> From: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
>>>> Sent: lundi 27 novembre 2017 11:47
>>>> To: users@tomee.apache.org
>>>> Subject: [++SPAM++]: Re: [++SPAM++]: Re: : Re: : Re: : Re:
>>>> Injecting WebserviceContext returns null
>>>>
>>>> Back to the first post I think: you get a proxy and the proxy gets the injections
properly but this is not your business instance.
>>>>
>>>> Romain Manni-Bucau
>>>> @rmannibucau |  Blog | Old Blog | Github | LinkedIn
>>>>
>>>>
>>>> 2017-11-27 11:32 GMT+01:00 COURTAULT Francois <Francois.Courtault@gemalto.com>:
>>>>> Hello Romain,
>>>>>
>>>>> I have defined an annotation like below:
>>>>> @Inherited
>>>>> @InterceptorBinding
>>>>> @Target({ElementType.METHOD, ElementType.TYPE})
>>>>> @Retention(RetentionPolicy.RUNTIME)
>>>>> public @interface Logged {
>>>>>
>>>>>   @Nonbinding
>>>>>   String logLevel() default "INFO"; }
>>>>>
>>>>> Then, I have written a class like this:
>>>>> @Logged
>>>>> @Interceptor
>>>>> public class LoggingInterceptor {
>>>>>  private Class<?> intercepted;
>>>>>
>>>>> @AroundInvoke
>>>>>   public Object logMethod(final InvocationContext ctx) throws
>>>>> Exception { .....
>>>>>  }
>>>>> }
>>>>>
>>>>> In my POJO, webservice endpoint, I have:
>>>>> @WebService(name = "MyManager", targetNamespace
>>>>> ="http://com.test/wsdl", serviceName = "MyManagerService") @Logged
>>>>> public class MyManager implements IMyManager {
>>>>>   @Resource
>>>>>   private WebServiceContext wsc;       //=>=> ALWAYS null on TomEE
7.0.4!!!
>>>>> ....
>>>>> }
>>>>>
>>>>> That's the test case I built which doesn't work on TomEE 7.0.4 but works,
as I have already mentioned,  on Glassfish 4.1.2/5.0, Weblogic Server 12.2.1.3 and Wildfly
10.0.1/11.0.0.
>>>>>
>>>>> Best Regards.
>>>>>
>>>>> -----Original Message-----
>>>>> From: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
>>>>> Sent: lundi 27 novembre 2017 11:08
>>>>> To: users@tomee.apache.org
>>>>> Subject: [++SPAM++]: Re: : Re: : Re: : Re: Injecting
>>>>> WebserviceContext returns null
>>>>>
>>>>> If there is no proxy for the instance this should work, did you ensure
it is not a cdi bean somehow or a @Dependent cdi bean?
>>>>>
>>>>> Romain Manni-Bucau
>>>>> @rmannibucau |  Blog | Old Blog | Github | LinkedIn
>>>>>
>>>>>
>>>>> 2017-11-27 11:00 GMT+01:00 COURTAULT Francois <Francois.Courtault@gemalto.com>:
>>>>>> Hello Romain,
>>>>>>
>>>>>> Sorry to come back to you about this topic.
>>>>>> But I think there is a real issue with CDI interceptor in TomEE 7.0.4.
>>>>>>
>>>>>> Let me explain, I have removed in the LoggingInterceptor annotated
with @Logged @Interceptor, the code below
>>>>>>   @Inject
>>>>>>   @Intercepted
>>>>>>   private Bean<?> intercepted;
>>>>>>
>>>>>> And replace it by
>>>>>> private Class<?> intercepted;
>>>>>>
>>>>>> Then, I revert back the update I have done (eg make the WS endpoint
also an EJB), that is to say that my WS endpoint is now a pure POJO.
>>>>>> And, in this one,  I get the WebServiceContext with this code:
>>>>>> @Resource
>>>>>> private WebServiceContext wsc;
>>>>>>
>>>>>> I tested this on Wildfly 10.0.1/11.0.0, Glassfish 4.1.2/5.0 and
>>>>>> Weblogic 12.2.1.3 (eg 3 different app servers with also different
versions for some of them), and every time, wsc is not null This is not the case with TomEE
7.0.4.
>>>>>>
>>>>>> Best Regards.
>>>>>>
>>>>>> -----Original Message-----
>>>>>> From: COURTAULT Francois
>>>>>> Sent: vendredi 24 novembre 2017 15:43
>>>>>> To: users@tomee.apache.org
>>>>>> Subject: RE: : Re: : Re: : Re: Injecting WebserviceContext
>>>>>> returns null
>>>>>>
>>>>>> Hello Romain,
>>>>>>
>>>>>> Answering to your question: no just un-deploy the previous version
(only pojo) update the code in order, for the WS endpoint, to become a stateless EJB (just
add @Stateless) and redeploy this new version and test it against TomEE, Glassfish 4.1.2 and
Wildfly 10.1.0.
>>>>>>
>>>>>> That's it.
>>>>>>
>>>>>> Best Regards.
>>>>>>
>>>>>> -----Original Message-----
>>>>>> From: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
>>>>>> Sent: vendredi 24 novembre 2017 15:34
>>>>>> To: users@tomee.apache.org
>>>>>> Subject: [++SPAM++]: Re: : Re: : Re: Injecting WebserviceContext
>>>>>> returns null
>>>>>>
>>>>>> 2017-11-24 15:26 GMT+01:00 COURTAULT Francois <Francois.Courtault@gemalto.com>:
>>>>>>> Hello Romain,
>>>>>>>
>>>>>>> I have found another workaround which seems to be more portable
as it works for TomEE and Wildfly as expected.
>>>>>>> I updated the Webservice POJO to become also a stateless EJB.
>>>>>>
>>>>>> also? so you deploy it twice potentially with different settings?
EJB integration should be more reliable yes since more mainstream and spec are more up to
date with CDI.
>>>>>>
>>>>>>>
>>>>>>> Having performed this update and deploy it in Glassfish 4.1.2,
I had a runtime issue:
>>>>>>> org.jboss.weld.exceptions.IllegalArgumentException: WELD-001405:
>>>>>>> Cannot inject [BackedAnnotatedField] @Inject @Intercepted private
com.gemalto.jaxws.LoggingInterceptor.intercepted in a class which isnt a bean Strange because
Wildfly is using WELD as well and it works.
>>>>>>>
>>>>>>
>>>>>> yes but versions are likely different and the integration is not
the same for sure.
>>>>>>
>>>>>>> BTW, I have subscribed to metro@javaee.groups.io but when I tried
to send an email I got:
>>>>>>> A communication failure occurred during the delivery of this
message. Please try to resend the message later. If the problem continues, contact your helpdesk.
>>>>>>> The following organization rejected your message: lb01.groups.io.
>>>>>>>
>>>>>>> Anything I can do to make the sending to this mailing-list work
? Have you any advice or tricks ?
>>>>>>
>>>>>> Not sure to be honest, JAX-WS is not the highest priority specs
>>>>>> so not really sure what is the current state :s
>>>>>>
>>>>>>>
>>>>>>> Best Regards.
>>>>>>>
>>>>>>> -----Original Message-----
>>>>>>> From: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
>>>>>>> Sent: vendredi 24 novembre 2017 10:46
>>>>>>> To: users@tomee.apache.org
>>>>>>> Subject: [++SPAM++]: Re: : Re: Injecting WebserviceContext
>>>>>>> returns null
>>>>>>>
>>>>>>> 2017-11-24 10:36 GMT+01:00 COURTAULT Francois <Francois.Courtault@gemalto.com>:
>>>>>>>> Hello Romain,
>>>>>>>>
>>>>>>>> I have tested my sample application on Glassfish 4.1.2 and
on Wildfly 10.1.0 and I get the same behavior.
>>>>>>>>
>>>>>>>> But, I have found a workaround on TomEE 7.0.4.
>>>>>>>>
>>>>>>>> Using the @Logged annotation, instead of having:
>>>>>>>> @Resource
>>>>>>>> private WebServiceContext wsc;
>>>>>>>>
>>>>>>>> I updated with this:
>>>>>>>> private WebServiceContext wsc;
>>>>>>>>
>>>>>>>> @Resource
>>>>>>>> public void setServiceContext(WebServiceContext wsc) {
>>>>>>>>    this.wsc = wsc;
>>>>>>>> }
>>>>>>>>
>>>>>>>> This workaround works for TomEE 7.0.4 but if I tried this
solution on Glassfish 4.1.2, I can't deploy my application. The error message I get is:
>>>>>>>> Caused by: com.sun.xml.bind.v2.runtime.IllegalAnnotationsException:
>>>>>>>> 1 counts of IllegalAnnotationExceptions javax.xml.ws.WebServiceContext
is an interface, and JAXB can't handle interfaces.
>>>>>>>
>>>>>>> This is funny it takes it as a jaxb class but setting the jaxb
>>>>>>> access to NONE on the class should be a workaround
>>>>>>>
>>>>>>>>
>>>>>>>> Using Wildfly 10.1.0, I was able to deploy my application
but at runtime I got the following exception:
>>>>>>>> Caused by: java.lang.IllegalStateException: WFLYEE0042: Failed
>>>>>>>> to construct component instance ...
>>>>>>>> Caused by: java.lang.reflect.InvocationTargetException
>>>>>>>> ...
>>>>>>>> Caused by: java.lang.NullPointerException
>>>>>>>>         at
>>>>>>>> com.mycompany.jaxws.LoggingInterceptor.logMethod(LoggingInterceptor.
>>>>>>>> j
>>>>>>>> a
>>>>>>>> va:32)
>>>>>>>>
>>>>>>>> The LoggingInterceptor looks like this:
>>>>>>>> @Inject
>>>>>>>> @Intercepted
>>>>>>>> private Bean<?> intercepted;
>>>>>>>> ....
>>>>>>>> line 32 Logged loggedAnnotation =
>>>>>>>> intercepted.getBeanClass().getAnnotation(Logged.class);
>>>>>>>>
>>>>>>>> So definitively, there is an issue with resource injection
and CDI interceptor because I can't find a portable solution except if I use standard interceptor
instead of CDI interceptor but, with this solution, we lose the facility to use annotation
for interceptor.
>>>>>>>
>>>>>>> Did you try the lookup? I don't fully recall the jndi name but
the resource should be accessible through a jndi lookup in the invocation context.
>>>>>>>
>>>>>>>>
>>>>>>>> How can I provide some feedback to Java EE spec members about
this issue ?
>>>>>>>
>>>>>>>
>>>>>>> fear we are in a migration state but entry point would be
>>>>>>> https://javaee.github.io/metro-jax-ws/
>>>>>>>
>>>>>>>>
>>>>>>>> Best Regards.
>>>>>>>>
>>>>>>>> -----Original Message-----
>>>>>>>> From: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
>>>>>>>> Sent: jeudi 23 novembre 2017 16:30
>>>>>>>> To: users@tomee.apache.org
>>>>>>>> Subject: [++SPAM++]: Re: Injecting WebserviceContext returns
>>>>>>>> null
>>>>>>>>
>>>>>>>> 2017-11-23 16:25 GMT+01:00 COURTAULT Francois <Francois.Courtault@gemalto.com>:
>>>>>>>>> Romain,
>>>>>>>>>
>>>>>>>>> My interceptor is linked to an annotation and is declared
in the beans.xml  in order to work so I guess it is a cdi interceptor and, according to what
you have said, a new proxy is created and so the injection is not done on the right proxy,
right ?
>>>>>>>>> But, in this case,  is it a bug ?
>>>>>>>>
>>>>>>>> Hmm, point is the jaxws runtime has no real other good way
to do the interception. A workaround can be to have a jaws @vetoed pojo webservice and inject
your cdi bean to delegate the processing to it.
>>>>>>>>
>>>>>>>>>
>>>>>>>>> The other solution is to use @Interceptor or @Interceptors
annotations but we lose the beauty of using an annotation for interceptor, right ?
>>>>>>>>
>>>>>>>> Would do the same I think.
>>>>>>>>
>>>>>>>>>
>>>>>>>>> Best Regards.
>>>>>>>>>
>>>>>>>>> -----Original Message-----
>>>>>>>>> From: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
>>>>>>>>> Sent: jeudi 23 novembre 2017 15:57
>>>>>>>>> To: users@tomee.apache.org
>>>>>>>>> Subject: Re: Injecting WebserviceContext returns null
>>>>>>>>>
>>>>>>>>> annotation = cdi interceptor? if so it leads to a proxy
and
>>>>>>>>> the injection happens on the wrong instance I think
>>>>>>>>>
>>>>>>>>> Romain Manni-Bucau
>>>>>>>>> @rmannibucau |  Blog | Old Blog | Github | LinkedIn
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> 2017-11-23 15:50 GMT+01:00 COURTAULT Francois <Francois.Courtault@gemalto.com>:
>>>>>>>>>> Hello Romain,
>>>>>>>>>>
>>>>>>>>>> I think I have found the issue.
>>>>>>>>>> In fact, we used a custom annotation for a logging
interceptor which targets METHOD and TYPE.
>>>>>>>>>>
>>>>>>>>>> If we remove this annotation  on our WS endpoint
(eg TYPE target) , then the injection is resolved.
>>>>>>>>>>
>>>>>>>>>> Do you know why we have this side effect  ? Is it
a bug ?
>>>>>>>>>> I have a  test case if you want.
>>>>>>>>>>
>>>>>>>>>> Best Regards.
>>>>>>>>>>
>>>>>>>>>> -----Original Message-----
>>>>>>>>>> From: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
>>>>>>>>>> Sent: jeudi 23 novembre 2017 14:25
>>>>>>>>>> To: users@tomee.apache.org
>>>>>>>>>> Subject: Re: Injecting WebserviceContext returns
null
>>>>>>>>>>
>>>>>>>>>> Looks close to
>>>>>>>>>> https://github.com/apache/tomee/blob/master/server/openejb-cx
>>>>>>>>>> f
>>>>>>>>>> /
>>>>>>>>>> s
>>>>>>>>>> r
>>>>>>>>>> c
>>>>>>>>>> /
>>>>>>>>>> t
>>>>>>>>>> e s
>>>>>>>>>> t/java/org/apache/openejb/server/cxf/PojoWebServiceContextTest.
>>>>>>>>>> j
>>>>>>>>>> a
>>>>>>>>>> v
>>>>>>>>>> a
>>>>>>>>>> , what can be the difference?
>>>>>>>>>>
>>>>>>>>>> Romain Manni-Bucau
>>>>>>>>>> @rmannibucau |  Blog | Old Blog | Github | LinkedIn
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> 2017-11-23 13:49 GMT+01:00 COURTAULT Francois <Francois.Courtault@gemalto.com>:
>>>>>>>>>>> Hello,
>>>>>>>>>>>
>>>>>>>>>>> No it's not an EJB webservice, just a POJO webservice
annotated with @WebService(name = "MyManager", targetNamespace = "http://xxx.yyy.test..com/",
serviceName = "MyManager", wsdlLocation =  "wsdl/MyManager.wsdl") like in the sample of my
first email.
>>>>>>>>>>> It looks quite similar to the sample provided
in the JAX-WS 2.3 specification (maintenance release 5), page 82, §5.3 (javax.xml.ws.WebServiceContext)
 except that the annotation, in our development,  uses  attributes like name, ...
>>>>>>>>>>>
>>>>>>>>>>> Best Regards.
>>>>>>>>>>>
>>>>>>>>>>> -----Original Message-----
>>>>>>>>>>> From: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
>>>>>>>>>>> Sent: jeudi 23 novembre 2017 13:34
>>>>>>>>>>> To: users@tomee.apache.org
>>>>>>>>>>> Subject: Re: Injecting WebserviceContext returns
null
>>>>>>>>>>>
>>>>>>>>>>> Hi François,
>>>>>>>>>>>
>>>>>>>>>>> did you test with an EJB webservice?
>>>>>>>>>>>
>>>>>>>>>>> Romain Manni-Bucau
>>>>>>>>>>> @rmannibucau |  Blog | Old Blog | Github | LinkedIn
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> 2017-11-23 12:11 GMT+01:00 COURTAULT Francois
<Francois.Courtault@gemalto.com>:
>>>>>>>>>>>> Hello,
>>>>>>>>>>>>
>>>>>>>>>>>> I have the following :
>>>>>>>>>>>>
>>>>>>>>>>>> @WebService(name = "MyManager", targetNamespace
=
>>>>>>>>>>>> "http://xxx.yyy.test..com/", serviceName
= "MyManager",
>>>>>>>>>>>> wsdlLocation =
>>>>>>>>>>>> "wsdl/MyManager.wsdl") public class MyManagerService
>>>>>>>>>>>> implements MyManager {
>>>>>>>>>>>>
>>>>>>>>>>>>     @Resource
>>>>>>>>>>>>     WebServiceContext webServiceContext;
....
>>>>>>>>>>>> }
>>>>>>>>>>>>
>>>>>>>>>>>> And the webServiceContet is always null !
Any clue ?
>>>>>>>>>>>>
>>>>>>>>>>>> Best Regards.
>>>>>>>>>>>> ________________________________ This message
and any
>>>>>>>>>>>> attachments are intended solely for the addressees
and may contain confidential information. Any unauthorized use or disclosure, either whole
or partial, is prohibited.
>>>>>>>>>>>> E-mails are susceptible to alteration. Our
company shall not be liable for the message if altered, changed or falsified. If you are not
the intended recipient of this message, please delete it and notify the sender.
>>>>>>>>>>>> Although all reasonable efforts have been
made to keep this transmission free from viruses, the sender will not be liable for damages
caused by a transmitted virus.
>>>>>>>>>>> ________________________________  This message
and any
>>>>>>>>>>> attachments are intended solely for the addressees
and may contain confidential information. Any unauthorized use or disclosure, either whole
or partial, is prohibited.
>>>>>>>>>>> E-mails are susceptible to alteration. Our company
shall not be liable for the message if altered, changed or falsified. If you are not the intended
recipient of this message, please delete it and notify the sender.
>>>>>>>>>>> Although all reasonable efforts have been made
to keep this transmission free from viruses, the sender will not be liable for damages caused
by a transmitted virus.
>>>>>>>>>> ________________________________  This message and
any
>>>>>>>>>> attachments are intended solely for the addressees
and may contain confidential information. Any unauthorized use or disclosure, either whole
or partial, is prohibited.
>>>>>>>>>> E-mails are susceptible to alteration. Our company
shall not be liable for the message if altered, changed or falsified. If you are not the intended
recipient of this message, please delete it and notify the sender.
>>>>>>>>>> Although all reasonable efforts have been made to
keep this transmission free from viruses, the sender will not be liable for damages caused
by a transmitted virus.
>>>>>>>>> ________________________________  This message and any
>>>>>>>>> attachments are intended solely for the addressees and
may contain confidential information. Any unauthorized use or disclosure, either whole or
partial, is prohibited.
>>>>>>>>> E-mails are susceptible to alteration. Our company shall
not be liable for the message if altered, changed or falsified. If you are not the intended
recipient of this message, please delete it and notify the sender.
>>>>>>>>> Although all reasonable efforts have been made to keep
this transmission free from viruses, the sender will not be liable for damages caused by a
transmitted virus.
>>>>>>>> ________________________________  This message and any
>>>>>>>> attachments are intended solely for the addressees and may
contain confidential information. Any unauthorized use or disclosure, either whole or partial,
is prohibited.
>>>>>>>> E-mails are susceptible to alteration. Our company shall
not be liable for the message if altered, changed or falsified. If you are not the intended
recipient of this message, please delete it and notify the sender.
>>>>>>>> Although all reasonable efforts have been made to keep this
transmission free from viruses, the sender will not be liable for damages caused by a transmitted
virus.
>>>>>>> ________________________________  This message and any
>>>>>>> attachments are intended solely for the addressees and may contain
confidential information. Any unauthorized use or disclosure, either whole or partial, is
prohibited.
>>>>>>> E-mails are susceptible to alteration. Our company shall not
be liable for the message if altered, changed or falsified. If you are not the intended recipient
of this message, please delete it and notify the sender.
>>>>>>> Although all reasonable efforts have been made to keep this transmission
free from viruses, the sender will not be liable for damages caused by a transmitted virus.
>>>>>> ________________________________
>>>>>>  This message and any attachments are intended solely for the addressees
and may contain confidential information. Any unauthorized use or disclosure, either whole
or partial, is prohibited.
>>>>>> E-mails are susceptible to alteration. Our company shall not be liable
for the message if altered, changed or falsified. If you are not the intended recipient of
this message, please delete it and notify the sender.
>>>>>> Although all reasonable efforts have been made to keep this transmission
free from viruses, the sender will not be liable for damages caused by a transmitted virus.
>>>>> ________________________________
>>>>>  This message and any attachments are intended solely for the addressees
and may contain confidential information. Any unauthorized use or disclosure, either whole
or partial, is prohibited.
>>>>> E-mails are susceptible to alteration. Our company shall not be liable
for the message if altered, changed or falsified. If you are not the intended recipient of
this message, please delete it and notify the sender.
>>>>> Although all reasonable efforts have been made to keep this transmission
free from viruses, the sender will not be liable for damages caused by a transmitted virus.
>>>> ________________________________
>>>>  This message and any attachments are intended solely for the addressees
and may contain confidential information. Any unauthorized use or disclosure, either whole
or partial, is prohibited.
>>>> E-mails are susceptible to alteration. Our company shall not be liable for
the message if altered, changed or falsified. If you are not the intended recipient of this
message, please delete it and notify the sender.
>>>> Although all reasonable efforts have been made to keep this transmission
free from viruses, the sender will not be liable for damages caused by a transmitted virus.
>>> ________________________________
>>>  This message and any attachments are intended solely for the addressees and
may contain confidential information. Any unauthorized use or disclosure, either whole or
partial, is prohibited.
>>> E-mails are susceptible to alteration. Our company shall not be liable for the
message if altered, changed or falsified. If you are not the intended recipient of this message,
please delete it and notify the sender.
>>> Although all reasonable efforts have been made to keep this transmission free
from viruses, the sender will not be liable for damages caused by a transmitted virus.
>> ________________________________
>>  This message and any attachments are intended solely for the addressees and may
contain confidential information. Any unauthorized use or disclosure, either whole or partial,
is prohibited.
>> E-mails are susceptible to alteration. Our company shall not be liable for the message
if altered, changed or falsified. If you are not the intended recipient of this message, please
delete it and notify the sender.
>> Although all reasonable efforts have been made to keep this transmission free from
viruses, the sender will not be liable for damages caused by a transmitted virus.
> ________________________________
>  This message and any attachments are intended solely for the addressees and may contain
confidential information. Any unauthorized use or disclosure, either whole or partial, is
prohibited.
> E-mails are susceptible to alteration. Our company shall not be liable for the message
if altered, changed or falsified. If you are not the intended recipient of this message, please
delete it and notify the sender.
> Although all reasonable efforts have been made to keep this transmission free from viruses,
the sender will not be liable for damages caused by a transmitted virus.
________________________________
 This message and any attachments are intended solely for the addressees and may contain confidential
information. Any unauthorized use or disclosure, either whole or partial, is prohibited.
E-mails are susceptible to alteration. Our company shall not be liable for the message if
altered, changed or falsified. If you are not the intended recipient of this message, please
delete it and notify the sender.
Although all reasonable efforts have been made to keep this transmission free from viruses,
the sender will not be liable for damages caused by a transmitted virus.
Mime
View raw message