You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by Crimor <cr...@web.de> on 2008/08/12 14:41:02 UTC

Servicemix-mail under Servicemix 3.2.2 Problems

Hi,

i try to get the servicemix-mail component running under servicemix 3.2.2
but i get problems. First of all
the xbean I am using:

<?xml version="1.0" encoding="UTF-8"?>
<beans
  xmlns:mail="http://servicemix.apache.org/mail/1.0" 
  xmlns:email="http://projectname/mailservice/v1/">

  <bean
   
class="net.adlinkgroup.adfusion.common.util.spring.StagePropertiesPlaceholderConfigurer"/>
  
  <mail:sender service="email:mailSenderService" 
             endpoint="senderEndpoint"
             sender="no-reply@company.net"
             receiver="testreceiver@targethost.com"
             connection="${adfusion.components.mail.service.smtpServer}" 
             debugMode ="true"/>        
</beans>

If i build this with maven there is this warning:

Failed to generate jbi.xml:
org.apache.servicemix.maven.plugin.jbi.JbiPluginException: Unable to
generate service unit descriptor!
org.apache.servicemix.maven.plugin.jbi.JbiPluginException: Unable to
generate service unit descriptor!
	at
org.apache.servicemix.maven.plugin.jbi.GenerateServiceUnitDescriptorMojo.generateJbiDescriptor(GenerateServiceUnitDescriptorMojo.java:206)
	at
org.apache.servicemix.maven.plugin.jbi.GenerateServiceUnitDescriptorMojo.execute(GenerateServiceUnitDescriptorMojo.java:143)
	at
org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:447)
	at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:539)
	at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:480)
	at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:459)
	at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:311)
	at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:278)
	at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143)
	at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:333)
	at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:126)
	at org.apache.maven.cli.MavenCli.main(MavenCli.java:282)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
	at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
	at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
	at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: org.springframework.beans.factory.BeanDefinitionStoreException:
Unrecognized xbean namespace mapping: http://servicemix.apache.org/mail/1.0
	at
org.apache.xbean.spring.context.v2c.XBeanNamespaceHandler.parseBeanFromExtensionElement(XBeanNamespaceHandler.java:268)
	at
org.apache.xbean.spring.context.v2c.XBeanNamespaceHandler.parse(XBeanNamespaceHandler.java:155)
	at
org.apache.xbean.spring.context.v2.XBeanNamespaceHandler.parse(XBeanNamespaceHandler.java:49)
	at
org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1114)
	at
org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1104)
	at
org.apache.xbean.spring.context.v2.XBeanBeanDefinitionDocumentReader.parseBeanDefinitions(XBeanBeanDefinitionDocumentReader.java:84)
	at
org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:90)
	at
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:458)
	at
org.apache.xbean.spring.context.v2.XBeanXmlBeanDefinitionReader.registerBeanDefinitions(XBeanXmlBeanDefinitionReader.java:79)
	at
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:353)
	at
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:303)
	at
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:280)
	at
org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:131)
	at
org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:147)
	at
org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:173)
	at
org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:112)
	at
org.apache.xbean.spring.context.FileSystemXmlApplicationContext.loadBeanDefinitions(FileSystemXmlApplicationContext.java:168)
	at
org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:101)
	at
org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:389)
	at
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:324)
	at
org.apache.servicemix.common.xbean.AbstractXBeanServiceUnitAnalyzer.init(AbstractXBeanServiceUnitAnalyzer.java:90)
	at
org.apache.servicemix.maven.plugin.jbi.GenerateServiceUnitDescriptorMojo.generateJbiDescriptor(GenerateServiceUnitDescriptorMojo.java:185)
	... 19 more

But I think the namespace of the servicemix mail component is right? Anyway,
regardless on this behaviour, maven builds my component. If I deploye the
mail service I got a xbean error, because the receiver property is invalid?
On your documentation to this service the property can be set in the
xbean.xml file.

ERROR - AutoDeploymentService          - Failed to update Service Assembly:
mailservice-mail-sa
java.lang.Exception: <?xml version="1.0" encoding="UTF-8"?>
<jbi-task xmlns="http://java.sun.com/xml/ns/jbi/management-message"
version="1.0">
<jbi-task-result>
<frmwk-task-result>
<frmwk-task-result-details>
<task-result-details>
<task-id>deploy</task-id>
<task-result>FAILED</task-result>
<message-type>ERROR</message-type>
</task-result-details>
</frmwk-task-result-details>
</frmwk-task-result>
<component-task-result
xmlns="http://java.sun.com/xml/ns/jbi/management-message">
        <component-name>servicemix-mail</component-name>
        <component-task-result-details>
                <task-result-details>
                        <task-id>deploy</task-id>
                        <task-result>FAILED</task-result>
                        <message-type>ERROR</message-type>
                        <task-status-msg>
<msg-loc-info>
<loc-token/>
<loc-message>Could not deploy xbean service unit</loc-message>
</msg-loc-info>
</task-status-msg>
                        <exception-info>
                                <nesting-level>1</nesting-level>
                                <msg-loc-info>
                                        <loc-token/>
                                       
<loc-message>org.springframework.beans.factory.BeanCreationException: Error
creating bean with name 'org.apache.servicemix.mail.MailSenderEndpoint'
defined in f
ile
[D:\Servicemix3.2.2\data\smx\service-assemblies\mailservice-mail-sa\version_13\sus\servicemix-mail\mailservice-mailbc-su\xbean.xml]:
Initialization of bean failed; nested exception is org.springfr
amework.beans.InvalidPropertyException: Invalid property 'receiver' of bean
class [org.apache.servicemix.mail.MailSenderEndpoint]: No property
'receiver' found</loc-message>
                                       
<stack-trace><![CDATA[org.apache.xbean.kernel.ServiceRegistrationException:
org.springframework.beans.factory.BeanCreationException: Error creating bean
with na
me 'org.apache.servicemix.mail.MailSenderEndpoint' defined in file
[D:\Servicemix3.2.2\data\smx\service-assemblies\mailservice-mail-sa\version_13\sus\servicemix-mail\mailservice-mailbc-su\xbean.xml]:
Initialization of bean failed; nested exception is
org.springframework.beans.InvalidPropertyException: Invalid property
'receiver' of bean class [org.apache.servicemix.mail.MailSenderEndpoint]: No
pro
perty 'receiver' found
        at
org.apache.xbean.kernel.standard.ServiceManagerRegistry.registerService(ServiceManagerRegistry.java:424)
        at
org.apache.xbean.kernel.standard.StandardKernel.registerService(StandardKernel.java:220)
        at
org.apache.xbean.server.spring.loader.SpringLoader.load(SpringLoader.java:152)
        at
org.apache.servicemix.common.xbean.AbstractXBeanDeployer.deploy(AbstractXBeanDeployer.java:83)
        at
org.apache.servicemix.common.BaseServiceUnitManager.doDeploy(BaseServiceUnitManager.java:88)
        at
org.apache.servicemix.common.BaseServiceUnitManager.deploy(BaseServiceUnitManager.java:69)
        at
org.apache.servicemix.jbi.framework.DeploymentService.deployServiceAssembly(DeploymentService.java:508)
        at
org.apache.servicemix.jbi.framework.AutoDeploymentService.updateServiceAssembly(AutoDeploymentService.java:353)
        at
org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(AutoDeploymentService.java:256)
        at
org.apache.servicemix.jbi.framework.AutoDeploymentService.monitorDirectory(AutoDeploymentService.java:664)
        at
org.apache.servicemix.jbi.framework.AutoDeploymentService.access$800(AutoDeploymentService.java:62)
        at
org.apache.servicemix.jbi.framework.AutoDeploymentService$1.run(AutoDeploymentService.java:628)
        at java.util.TimerThread.mainLoop(Timer.java:512)
        at java.util.TimerThread.run(Timer.java:462)

So I delete the receiver property in the xbean.xml file and the service got
deployed.  

Now I tried to send a jbi message to this new deployed mail service, but i
get a Nullpointer error, so I'am on my end, to get this working in
Servicemix 3.2.2. 

Code to send an jbi message:


private static final QName SERVICE_NAME = new
QName("http://projectname/mailservice/v1/",
                                                "mailSenderService");

public void sendMessage() throws FOOException {
    ServiceMixClient client = new ServiceMixClientFacade(context);
    NormalizedMessage message = null;
    InOnly exchange = null;

    try {
      exchange = client.createInOnlyExchange();
      message = exchange.getInMessage();

      message.setProperty("MSG_TAG_TO", "XXX@XXXXX.net");
      message.setProperty("MSG_TAG_SUBJECT", "Test Email over Soa");
      message.setProperty("MSG_TAG_TEXT", "Hey das geht ja mal!");

      logger.info("sendMessage() - message property: " +
message.getProperty("MSG_TAG_TO"));
      exchange.setService(SERVICE_NAME);
      exchange.setInterfaceName(null);
      exchange.setOperation(null);

      // sending the message
      client.sendSync(exchange);
    } catch (MessagingException e) {
      StringBuilder sb = new StringBuilder();
      logger.error("sendMessage() - " + sb.toString(), e);
      throw new FooException(sb.toString(), e);
    }

    try {
      client.done(exchange);
    } catch (MessagingException e) {
      String msg = "Error setting status of response to
ExchangeStatus.DONE";
      logger.error("sendMessage() - " + msg + ": " + e.getMessage());
    } finally {
      try {
        client.close();
      } catch (JBIException e) {
        String msg = "Error closing client";
        logger.error("sendMessage() - " + msg + ": " + e.getMessage());
      }
    }
  }

And here the error from servicemix:

DEBUG - SedaQueue                      -
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@dbbc62 dequeued
exchange: InOnly[
  id: ID:172.30.30.167-11bb6e25967-5:3
  status: Active
  role: provider
  service: {http://projectname/mailservice/v1/}mailSenderService
  endpoint: senderEndpoint
  in: null
]
DEBUG - MailComponent                  - Received exchange: status: Active,
role: provider
DEBUG - MailComponent                  - Retrieved correlation id: null
DEBUG: JavaMail version 1.4
DEBUG: java.io.FileNotFoundException:
C:\Programme\Java\jdk1.6.0_07\jre\lib\javamail.providers (Das System kann
die angegebene Datei nicht finden)
DEBUG: !anyLoaded
DEBUG: not loading resource: /META-INF/javamail.providers
DEBUG: successfully loaded resource: /META-INF/javamail.default.providers
DEBUG: Tables of loaded providers
DEBUG: Providers Listed By Class Name:
{com.sun.mail.smtp.SMTPSSLTransport=javax.mail.Provider[TRANSPORT,smtps,com.sun.mail.smtp.SMTPSSLTransport,Sun
Microsystems, Inc], com.sun.mail.smtp.SMTPTranspor
t=javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun
Microsystems, Inc],
com.sun.mail.imap.IMAPSSLStore=javax.mail.Provider[STORE,imaps,com.sun.mail.imap.IMAPSSLStore,Sun
Microsyst
ems, Inc],
com.sun.mail.pop3.POP3SSLStore=javax.mail.Provider[STORE,pop3s,com.sun.mail.pop3.POP3SSLStore,Sun
Microsystems, Inc],
com.sun.mail.imap.IMAPStore=javax.mail.Provider[STORE,imap,com.sun.mail
.imap.IMAPStore,Sun Microsystems, Inc],
com.sun.mail.pop3.POP3Store=javax.mail.Provider[STORE,pop3,com.sun.mail.pop3.POP3Store,Sun
Microsystems, Inc]}
DEBUG: Providers Listed By Protocol:
{imaps=javax.mail.Provider[STORE,imaps,com.sun.mail.imap.IMAPSSLStore,Sun
Microsystems, Inc],
imap=javax.mail.Provider[STORE,imap,com.sun.mail.imap.IMAPStore,Sun M
icrosystems, Inc],
smtps=javax.mail.Provider[TRANSPORT,smtps,com.sun.mail.smtp.SMTPSSLTransport,Sun
Microsystems, Inc],
pop3=javax.mail.Provider[STORE,pop3,com.sun.mail.pop3.POP3Store,Sun
Microsystems
, Inc],
pop3s=javax.mail.Provider[STORE,pop3s,com.sun.mail.pop3.POP3SSLStore,Sun
Microsystems, Inc],
smtp=javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun
Microsystems, Inc]}
DEBUG: successfully loaded resource: /META-INF/javamail.default.address.map
DEBUG: !anyLoaded
DEBUG: not loading resource: /META-INF/javamail.address.map
DEBUG: java.io.FileNotFoundException:
C:\Programme\Java\jdk1.6.0_07\jre\lib\javamail.address.map (Das System kann
die angegebene Datei nicht finden)
DEBUG: setDebug: JavaMail version 1.4
ERROR - MailComponent                  - Error sending mail...
javax.mail.MessagingException;
  nested exception is:
        java.lang.NullPointerException
        at
org.apache.servicemix.mail.marshaler.DefaultMailMarshaler.convertJBIToMail(DefaultMailMarshaler.java:90)
        at
org.apache.servicemix.mail.MailSenderEndpoint.processInOnly(MailSenderEndpoint.java:110)
        at
org.apache.servicemix.common.endpoints.ProviderEndpoint.process(ProviderEndpoint.java:100)
        at
org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:538)
        at
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:490)
        at
org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
        at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:610)
        at
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:172)
        at
org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:167)
        at
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
        at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.NullPointerException
        at javax.mail.internet.MimeUtility.checkAscii(MimeUtility.java:1286)
        at javax.mail.internet.MimeBodyPart.setText(MimeBodyPart.java:1023)
        at javax.mail.internet.MimeMessage.setText(MimeMessage.java:1467)
        at javax.mail.internet.MimeMessage.setText(MimeMessage.java:1451)
        at
org.apache.servicemix.mail.marshaler.DefaultMailMarshaler.fillMailBody(DefaultMailMarshaler.java:244)
        at
org.apache.servicemix.mail.marshaler.DefaultMailMarshaler.fillMailBodyAndAttachments(DefaultMailMarshaler.java:143)
        at
org.apache.servicemix.mail.marshaler.DefaultMailMarshaler.convertJBIToMail(DefaultMailMarshaler.java:88)
        ... 12 more
ERROR - MailComponent                  - Error processing exchange InOnly[
  id: ID:172.30.30.167-11bb6e25967-5:3
  status: Active
  role: provider
  service: {http://projectname/mailservice/v1/}mailSenderService
  endpoint: senderEndpoint
  in: null
]
javax.mail.MessagingException;
  nested exception is:
        java.lang.NullPointerException
        at
org.apache.servicemix.mail.marshaler.DefaultMailMarshaler.convertJBIToMail(DefaultMailMarshaler.java:90)
        at
org.apache.servicemix.mail.MailSenderEndpoint.processInOnly(MailSenderEndpoint.java:110)
        at
org.apache.servicemix.common.endpoints.ProviderEndpoint.process(ProviderEndpoint.java:100)
        at
org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:538)
        at
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:490)
        at
org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
        at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:610)
        at
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:172)
        at
org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:167)
        at
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
        at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.NullPointerException
        at javax.mail.internet.MimeUtility.checkAscii(MimeUtility.java:1286)
        at javax.mail.internet.MimeBodyPart.setText(MimeBodyPart.java:1023)
        at javax.mail.internet.MimeMessage.setText(MimeMessage.java:1467)
        at javax.mail.internet.MimeMessage.setText(MimeMessage.java:1451)
        at
org.apache.servicemix.mail.marshaler.DefaultMailMarshaler.fillMailBody(DefaultMailMarshaler.java:244)
        at
org.apache.servicemix.mail.marshaler.DefaultMailMarshaler.fillMailBodyAndAttachments(DefaultMailMarshaler.java:143)
        at
org.apache.servicemix.mail.marshaler.DefaultMailMarshaler.convertJBIToMail(DefaultMailMarshaler.java:88)
        ... 12 more



Why is the in message null?
Can anyone help me?


-- 
View this message in context: http://www.nabble.com/Servicemix-mail-under-Servicemix-3.2.2-Problems-tp18943564p18943564.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: Servicemix-mail under Servicemix 3.2.2 Problems

Posted by Lars Heinemann <la...@compart.net>.
Crimor,

this is not a bug of the mail component. The receiver property is existing. It 
seems this is some issue of xbean?
To work around this see my code modifications below...

Regards
Lars


Am Dienstag 12 August 2008 14:41:02 schrieb Crimor:
> Hi,
>
> i try to get the servicemix-mail component running under servicemix 3.2.2
> but i get problems. First of all
> the xbean I am using:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <beans
>   xmlns:mail="http://servicemix.apache.org/mail/1.0"
>   xmlns:email="http://projectname/mailservice/v1/">
>
>   <bean
>
> class="net.adlinkgroup.adfusion.common.util.spring.StagePropertiesPlacehold
>erConfigurer"/>
>
>   <mail:sender service="email:mailSenderService"
>              endpoint="senderEndpoint"
>              sender="no-reply@company.net"
>              receiver="testreceiver@targethost.com"
>              connection="${adfusion.components.mail.service.smtpServer}"
>              debugMode ="true"/>
> </beans>
>
> If i build this with maven there is this warning:
>
> Failed to generate jbi.xml:
> org.apache.servicemix.maven.plugin.jbi.JbiPluginException: Unable to
> generate service unit descriptor!
> org.apache.servicemix.maven.plugin.jbi.JbiPluginException: Unable to
> generate service unit descriptor!
> 	at
> org.apache.servicemix.maven.plugin.jbi.GenerateServiceUnitDescriptorMojo.ge
>nerateJbiDescriptor(GenerateServiceUnitDescriptorMojo.java:206) at
> org.apache.servicemix.maven.plugin.jbi.GenerateServiceUnitDescriptorMojo.ex
>ecute(GenerateServiceUnitDescriptorMojo.java:143) at
> org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManag
>er.java:447) at
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLif
>ecycleExecutor.java:539) at
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycl
>e(DefaultLifecycleExecutor.java:480) at
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLife
>cycleExecutor.java:459) at
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFai
>lures(DefaultLifecycleExecutor.java:311) at
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(Def
>aultLifecycleExecutor.java:278) at
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycl
>eExecutor.java:143) at
> org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:333) at
> org.apache.maven.DefaultMaven.execute(DefaultMaven.java:126)
> 	at org.apache.maven.cli.MavenCli.main(MavenCli.java:282)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:3
>9) at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImp
>l.java:25) at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
> 	at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
> 	at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
> 	at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
> Caused by: org.springframework.beans.factory.BeanDefinitionStoreException:
> Unrecognized xbean namespace mapping: http://servicemix.apache.org/mail/1.0
> 	at
> org.apache.xbean.spring.context.v2c.XBeanNamespaceHandler.parseBeanFromExte
>nsionElement(XBeanNamespaceHandler.java:268) at
> org.apache.xbean.spring.context.v2c.XBeanNamespaceHandler.parse(XBeanNamesp
>aceHandler.java:155) at
> org.apache.xbean.spring.context.v2.XBeanNamespaceHandler.parse(XBeanNamespa
>ceHandler.java:49) at
> org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCus
>tomElement(BeanDefinitionParserDelegate.java:1114) at
> org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCus
>tomElement(BeanDefinitionParserDelegate.java:1104) at
> org.apache.xbean.spring.context.v2.XBeanBeanDefinitionDocumentReader.parseB
>eanDefinitions(XBeanBeanDefinitionDocumentReader.java:84) at
> org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.r
>egisterBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:90) at
> org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanD
>efinitions(XmlBeanDefinitionReader.java:458) at
> org.apache.xbean.spring.context.v2.XBeanXmlBeanDefinitionReader.registerBea
>nDefinitions(XBeanXmlBeanDefinitionReader.java:79) at
> org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDef
>initions(XmlBeanDefinitionReader.java:353) at
> org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefin
>itions(XmlBeanDefinitionReader.java:303) at
> org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefin
>itions(XmlBeanDefinitionReader.java:280) at
> org.springframework.beans.factory.support.AbstractBeanDefinitionReader.load
>BeanDefinitions(AbstractBeanDefinitionReader.java:131) at
> org.springframework.beans.factory.support.AbstractBeanDefinitionReader.load
>BeanDefinitions(AbstractBeanDefinitionReader.java:147) at
> org.springframework.beans.factory.support.AbstractBeanDefinitionReader.load
>BeanDefinitions(AbstractBeanDefinitionReader.java:173) at
> org.springframework.context.support.AbstractXmlApplicationContext.loadBeanD
>efinitions(AbstractXmlApplicationContext.java:112) at
> org.apache.xbean.spring.context.FileSystemXmlApplicationContext.loadBeanDef
>initions(FileSystemXmlApplicationContext.java:168) at
> org.springframework.context.support.AbstractRefreshableApplicationContext.r
>efreshBeanFactory(AbstractRefreshableApplicationContext.java:101) at
> org.springframework.context.support.AbstractApplicationContext.obtainFreshB
>eanFactory(AbstractApplicationContext.java:389) at
> org.springframework.context.support.AbstractApplicationContext.refresh(Abst
>ractApplicationContext.java:324) at
> org.apache.servicemix.common.xbean.AbstractXBeanServiceUnitAnalyzer.init(Ab
>stractXBeanServiceUnitAnalyzer.java:90) at
> org.apache.servicemix.maven.plugin.jbi.GenerateServiceUnitDescriptorMojo.ge
>nerateJbiDescriptor(GenerateServiceUnitDescriptorMojo.java:185) ... 19 more
>
> But I think the namespace of the servicemix mail component is right?
> Anyway, regardless on this behaviour, maven builds my component. If I
> deploye the mail service I got a xbean error, because the receiver property
> is invalid? On your documentation to this service the property can be set
> in the xbean.xml file.
>
> ERROR - AutoDeploymentService          - Failed to update Service Assembly:
> mailservice-mail-sa
> java.lang.Exception: <?xml version="1.0" encoding="UTF-8"?>
> <jbi-task xmlns="http://java.sun.com/xml/ns/jbi/management-message"
> version="1.0">
> <jbi-task-result>
> <frmwk-task-result>
> <frmwk-task-result-details>
> <task-result-details>
> <task-id>deploy</task-id>
> <task-result>FAILED</task-result>
> <message-type>ERROR</message-type>
> </task-result-details>
> </frmwk-task-result-details>
> </frmwk-task-result>
> <component-task-result
> xmlns="http://java.sun.com/xml/ns/jbi/management-message">
>         <component-name>servicemix-mail</component-name>
>         <component-task-result-details>
>                 <task-result-details>
>                         <task-id>deploy</task-id>
>                         <task-result>FAILED</task-result>
>                         <message-type>ERROR</message-type>
>                         <task-status-msg>
> <msg-loc-info>
> <loc-token/>
> <loc-message>Could not deploy xbean service unit</loc-message>
> </msg-loc-info>
> </task-status-msg>
>                         <exception-info>
>                                 <nesting-level>1</nesting-level>
>                                 <msg-loc-info>
>                                         <loc-token/>
>
> <loc-message>org.springframework.beans.factory.BeanCreationException: Error
> creating bean with name 'org.apache.servicemix.mail.MailSenderEndpoint'
> defined in f
> ile
> [D:\Servicemix3.2.2\data\smx\service-assemblies\mailservice-mail-sa\version
>_13\sus\servicemix-mail\mailservice-mailbc-su\xbean.xml]: Initialization of
> bean failed; nested exception is org.springfr
> amework.beans.InvalidPropertyException: Invalid property 'receiver' of bean
> class [org.apache.servicemix.mail.MailSenderEndpoint]: No property
> 'receiver' found</loc-message>
>
> <stack-trace><![CDATA[org.apache.xbean.kernel.ServiceRegistrationException:
> org.springframework.beans.factory.BeanCreationException: Error creating
> bean with na
> me 'org.apache.servicemix.mail.MailSenderEndpoint' defined in file
> [D:\Servicemix3.2.2\data\smx\service-assemblies\mailservice-mail-sa\version
>_13\sus\servicemix-mail\mailservice-mailbc-su\xbean.xml]: Initialization of
> bean failed; nested exception is
> org.springframework.beans.InvalidPropertyException: Invalid property
> 'receiver' of bean class [org.apache.servicemix.mail.MailSenderEndpoint]:
> No pro
> perty 'receiver' found
>         at
> org.apache.xbean.kernel.standard.ServiceManagerRegistry.registerService(Ser
>viceManagerRegistry.java:424) at
> org.apache.xbean.kernel.standard.StandardKernel.registerService(StandardKer
>nel.java:220) at
> org.apache.xbean.server.spring.loader.SpringLoader.load(SpringLoader.java:1
>52) at
> org.apache.servicemix.common.xbean.AbstractXBeanDeployer.deploy(AbstractXBe
>anDeployer.java:83) at
> org.apache.servicemix.common.BaseServiceUnitManager.doDeploy(BaseServiceUni
>tManager.java:88) at
> org.apache.servicemix.common.BaseServiceUnitManager.deploy(BaseServiceUnitM
>anager.java:69) at
> org.apache.servicemix.jbi.framework.DeploymentService.deployServiceAssembly
>(DeploymentService.java:508) at
> org.apache.servicemix.jbi.framework.AutoDeploymentService.updateServiceAsse
>mbly(AutoDeploymentService.java:353) at
> org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(Aut
>oDeploymentService.java:256) at
> org.apache.servicemix.jbi.framework.AutoDeploymentService.monitorDirectory(
>AutoDeploymentService.java:664) at
> org.apache.servicemix.jbi.framework.AutoDeploymentService.access$800(AutoDe
>ploymentService.java:62) at
> org.apache.servicemix.jbi.framework.AutoDeploymentService$1.run(AutoDeploym
>entService.java:628) at java.util.TimerThread.mainLoop(Timer.java:512)
>         at java.util.TimerThread.run(Timer.java:462)
>
> So I delete the receiver property in the xbean.xml file and the service got
> deployed.
>
> Now I tried to send a jbi message to this new deployed mail service, but i
> get a Nullpointer error, so I'am on my end, to get this working in
> Servicemix 3.2.2.
>
> Code to send an jbi message:
>
>
> private static final QName SERVICE_NAME = new
> QName("http://projectname/mailservice/v1/",
>                                                 "mailSenderService");
>
> public void sendMessage() throws FOOException {
>     ServiceMixClient client = new ServiceMixClientFacade(context);
>     NormalizedMessage message = null;
>     InOnly exchange = null;
>
>     try {
>       exchange = client.createInOnlyExchange();
>       message = exchange.getInMessage();
>
>       message.setProperty("MSG_TAG_TO", "XXX@XXXXX.net");
>       message.setProperty("MSG_TAG_SUBJECT", "Test Email over Soa");
>       message.setProperty("MSG_TAG_TEXT", "Hey das geht ja mal!");

       message.setProperty(AbstractMailMarshaler.MSG_TAG_TO, "XXX@XXXXX.net");
       message.setProperty(AbstractMailMarshaler.MSG_TAG_SUBJECT, "Test Email 
over Soa");
       message.setProperty(AbstractMailMarshaler.MSG_TAG_TEXT, "Hey das geht 
ja mal!");


>
>       logger.info("sendMessage() - message property: " +
> message.getProperty("MSG_TAG_TO"));

logger.info("sendMessage() - message property: " + 
message.getProperty(AbstractMailMarshaler.MSG_TAG_TO));

--> don't forget to import the AbstractMailMarshaler if needed!!!


>       exchange.setService(SERVICE_NAME);
>       exchange.setInterfaceName(null);
>       exchange.setOperation(null);
>
>       // sending the message
>       client.sendSync(exchange);
>     } catch (MessagingException e) {
>       StringBuilder sb = new StringBuilder();
>       logger.error("sendMessage() - " + sb.toString(), e);
>       throw new FooException(sb.toString(), e);
>     }
>
>     try {
>       client.done(exchange);
>     } catch (MessagingException e) {
>       String msg = "Error setting status of response to
> ExchangeStatus.DONE";
>       logger.error("sendMessage() - " + msg + ": " + e.getMessage());
>     } finally {
>       try {
>         client.close();
>       } catch (JBIException e) {
>         String msg = "Error closing client";
>         logger.error("sendMessage() - " + msg + ": " + e.getMessage());
>       }
>     }
>   }
>
> And here the error from servicemix:
>
> DEBUG - SedaQueue                      -
> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@dbbc62 dequeued
> exchange: InOnly[
>   id: ID:172.30.30.167-11bb6e25967-5:3
>   status: Active
>   role: provider
>   service: {http://projectname/mailservice/v1/}mailSenderService
>   endpoint: senderEndpoint
>   in: null
> ]
> DEBUG - MailComponent                  - Received exchange: status: Active,
> role: provider
> DEBUG - MailComponent                  - Retrieved correlation id: null
> DEBUG: JavaMail version 1.4
> DEBUG: java.io.FileNotFoundException:
> C:\Programme\Java\jdk1.6.0_07\jre\lib\javamail.providers (Das System kann
> die angegebene Datei nicht finden)
> DEBUG: !anyLoaded
> DEBUG: not loading resource: /META-INF/javamail.providers
> DEBUG: successfully loaded resource: /META-INF/javamail.default.providers
> DEBUG: Tables of loaded providers
> DEBUG: Providers Listed By Class Name:
> {com.sun.mail.smtp.SMTPSSLTransport=javax.mail.Provider[TRANSPORT,smtps,com
>.sun.mail.smtp.SMTPSSLTransport,Sun Microsystems, Inc],
> com.sun.mail.smtp.SMTPTranspor
> t=javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun
> Microsystems, Inc],
> com.sun.mail.imap.IMAPSSLStore=javax.mail.Provider[STORE,imaps,com.sun.mail
>.imap.IMAPSSLStore,Sun Microsyst
> ems, Inc],
> com.sun.mail.pop3.POP3SSLStore=javax.mail.Provider[STORE,pop3s,com.sun.mail
>.pop3.POP3SSLStore,Sun Microsystems, Inc],
> com.sun.mail.imap.IMAPStore=javax.mail.Provider[STORE,imap,com.sun.mail
> .imap.IMAPStore,Sun Microsystems, Inc],
> com.sun.mail.pop3.POP3Store=javax.mail.Provider[STORE,pop3,com.sun.mail.pop
>3.POP3Store,Sun Microsystems, Inc]}
> DEBUG: Providers Listed By Protocol:
> {imaps=javax.mail.Provider[STORE,imaps,com.sun.mail.imap.IMAPSSLStore,Sun
> Microsystems, Inc],
> imap=javax.mail.Provider[STORE,imap,com.sun.mail.imap.IMAPStore,Sun M
> icrosystems, Inc],
> smtps=javax.mail.Provider[TRANSPORT,smtps,com.sun.mail.smtp.SMTPSSLTranspor
>t,Sun Microsystems, Inc],
> pop3=javax.mail.Provider[STORE,pop3,com.sun.mail.pop3.POP3Store,Sun
> Microsystems
> , Inc],
> pop3s=javax.mail.Provider[STORE,pop3s,com.sun.mail.pop3.POP3SSLStore,Sun
> Microsystems, Inc],
> smtp=javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun
> Microsystems, Inc]}
> DEBUG: successfully loaded resource: /META-INF/javamail.default.address.map
> DEBUG: !anyLoaded
> DEBUG: not loading resource: /META-INF/javamail.address.map
> DEBUG: java.io.FileNotFoundException:
> C:\Programme\Java\jdk1.6.0_07\jre\lib\javamail.address.map (Das System kann
> die angegebene Datei nicht finden)
> DEBUG: setDebug: JavaMail version 1.4
> ERROR - MailComponent                  - Error sending mail...
> javax.mail.MessagingException;
>   nested exception is:
>         java.lang.NullPointerException
>         at
> org.apache.servicemix.mail.marshaler.DefaultMailMarshaler.convertJBIToMail(
>DefaultMailMarshaler.java:90) at
> org.apache.servicemix.mail.MailSenderEndpoint.processInOnly(MailSenderEndpo
>int.java:110) at
> org.apache.servicemix.common.endpoints.ProviderEndpoint.process(ProviderEnd
>point.java:100) at
> org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycl
>e.java:538) at
> org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLi
>feCycle.java:490) at
> org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.
>java:46) at
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(Deli
>veryChannelImpl.java:610) at
> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java
>:172) at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:16
>7) at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
>         at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.j
>ava:885) at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:
>907) at java.lang.Thread.run(Thread.java:619)
> Caused by: java.lang.NullPointerException
>         at
> javax.mail.internet.MimeUtility.checkAscii(MimeUtility.java:1286) at
> javax.mail.internet.MimeBodyPart.setText(MimeBodyPart.java:1023) at
> javax.mail.internet.MimeMessage.setText(MimeMessage.java:1467) at
> javax.mail.internet.MimeMessage.setText(MimeMessage.java:1451) at
> org.apache.servicemix.mail.marshaler.DefaultMailMarshaler.fillMailBody(Defa
>ultMailMarshaler.java:244) at
> org.apache.servicemix.mail.marshaler.DefaultMailMarshaler.fillMailBodyAndAt
>tachments(DefaultMailMarshaler.java:143) at
> org.apache.servicemix.mail.marshaler.DefaultMailMarshaler.convertJBIToMail(
>DefaultMailMarshaler.java:88) ... 12 more
> ERROR - MailComponent                  - Error processing exchange InOnly[
>   id: ID:172.30.30.167-11bb6e25967-5:3
>   status: Active
>   role: provider
>   service: {http://projectname/mailservice/v1/}mailSenderService
>   endpoint: senderEndpoint
>   in: null
> ]
> javax.mail.MessagingException;
>   nested exception is:
>         java.lang.NullPointerException
>         at
> org.apache.servicemix.mail.marshaler.DefaultMailMarshaler.convertJBIToMail(
>DefaultMailMarshaler.java:90) at
> org.apache.servicemix.mail.MailSenderEndpoint.processInOnly(MailSenderEndpo
>int.java:110) at
> org.apache.servicemix.common.endpoints.ProviderEndpoint.process(ProviderEnd
>point.java:100) at
> org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycl
>e.java:538) at
> org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLi
>feCycle.java:490) at
> org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.
>java:46) at
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(Deli
>veryChannelImpl.java:610) at
> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java
>:172) at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:16
>7) at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
>         at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.j
>ava:885) at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:
>907) at java.lang.Thread.run(Thread.java:619)
> Caused by: java.lang.NullPointerException
>         at
> javax.mail.internet.MimeUtility.checkAscii(MimeUtility.java:1286) at
> javax.mail.internet.MimeBodyPart.setText(MimeBodyPart.java:1023) at
> javax.mail.internet.MimeMessage.setText(MimeMessage.java:1467) at
> javax.mail.internet.MimeMessage.setText(MimeMessage.java:1451) at
> org.apache.servicemix.mail.marshaler.DefaultMailMarshaler.fillMailBody(Defa
>ultMailMarshaler.java:244) at
> org.apache.servicemix.mail.marshaler.DefaultMailMarshaler.fillMailBodyAndAt
>tachments(DefaultMailMarshaler.java:143) at
> org.apache.servicemix.mail.marshaler.DefaultMailMarshaler.convertJBIToMail(
>DefaultMailMarshaler.java:88) ... 12 more
>
>
>
> Why is the in message null?
> Can anyone help me?