You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-user@james.apache.org by Raju Bitter <r....@googlemail.com> on 2010/11/26 10:05:02 UTC

Setting up a mailing list for James 3.0 M2

I'm trying to set up a mailing lists for 3.0M2, using the
documentation I found here:
http://james.apache.org/server/2.3.0/mailing_lists.html

What are the changes required to make that work in 3.0M2? Here's what
I've tried:

1) Created a email address for the mailing list

2) I added the processor to mailetcontainer.xml
  <!-- Mailing lists -->
  <processor name="mailinglists">
    <mailet match="CommandForListserv=new-mailing-list@mydomain.com"
class="AvalonListservManager">
      <repositoryName>new-mailing-list-repo</repositoryName>
    </mailet>
    <mailet match="RecipientIs=new-mailing-list@mydomain.com"
class="AvalonListserv">
      <repositoryName>new-mailing-list-repo</repositoryName>
    </mailet>
  </processor>
</mailetcontainer>

3) Added a repository for the list to usersrepository.xml
  <repository name="new-mailing-list-repo"
              class="org.apache.james.userrepository.ListUsersJdbcRepository"
              destinationURL="db://maildb/lists/new-mailing-list-repo">
    <sqlFile>file://conf/sqlResources.xml</sqlFile>
  </repository>
</usersrepository>

I ran into an exception here, since the following class could not be found:
org.apache.james.userrepository.ListUsersJdbcRepository

It seems the new classname is:
org.apache.james.user.jdbc.ListUsersJdbcRepository

But using that, I get the following error:
jvm 1    | [Fatal Error] :2:6: The processing instruction target
matching "[xX][mM][lL]" is not allowed.
jvm 1    | org.springframework.beans.factory.BeanCreationException:
Error creating bean with name
'org.apache.james.transport.mailets.ToRepository': Injection of
resource dependencies failed; nested exception is
org.springframework.beans.factory.BeanCreationException: Error
creating bean with name 'mailstore' defined in class path resource
[spring-beans.xml]: Initialization of bean failed; nested exception is
org.springframework.beans.FatalBeanException: Unable to execute
lifecycle method on beanmailstore; nested exception is
org.apache.commons.configuration.ConfigurationException: Unable to
load configuration for component mailstore
jvm 1    | 	at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessPropertyValues(CommonAnnotationBeanPostProcessor.java:300)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1074)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireBean(AbstractAutowireCapableBeanFactory.java:295)
jvm 1    | 	at org.apache.james.container.spring.SpringInstanceFactory.newInstance(SpringInstanceFactory.java:73)
jvm 1    | 	at org.apache.james.container.spring.SpringInstanceFactory.newInstance(SpringInstanceFactory.java:48)
jvm 1    | 	at org.apache.james.mailetcontainer.lib.JamesMailetLoader.getMailet(JamesMailetLoader.java:57)
jvm 1    | 	at org.apache.james.mailetcontainer.camel.CamelMailProcessorList$SpoolRouteBuilder.configure(CamelMailProcessorList.java:422)
jvm 1    | 	at org.apache.camel.builder.RouteBuilder.checkInitialized(RouteBuilder.java:295)
jvm 1    | 	at org.apache.camel.builder.RouteBuilder.configureRoutes(RouteBuilder.java:250)
jvm 1    | 	at org.apache.camel.builder.RouteBuilder.addRoutesToCamelContext(RouteBuilder.java:236)
jvm 1    | 	at org.apache.camel.impl.DefaultCamelContext.addRoutes(DefaultCamelContext.java:552)
jvm 1    | 	at org.apache.james.mailetcontainer.camel.CamelMailProcessorList.init(CamelMailProcessorList.java:105)
jvm 1    | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
jvm 1    | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
jvm 1    | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
jvm 1    | 	at java.lang.reflect.Method.invoke(Method.java:597)
jvm 1    | 	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:340)
jvm 1    | 	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:293)
jvm 1    | 	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:130)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:394)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1413)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
jvm 1    | 	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
jvm 1    | 	at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:435)
jvm 1    | 	at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:409)
jvm 1    | 	at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:541)
jvm 1    | 	at org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:156)
jvm 1    | 	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:84)
jvm 1    | 	at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessPropertyValues(CommonAnnotationBeanPostProcessor.java:297)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1074)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
jvm 1    | 	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
jvm 1    | 	at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:322)
jvm 1    | 	at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106)
jvm 1    | 	at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveManagedMap(BeanDefinitionValueResolver.java:378)
jvm 1    | 	at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:161)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1325)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1086)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
jvm 1    | 	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
jvm 1    | 	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:580)
jvm 1    | 	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
jvm 1    | 	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425)
jvm 1    | 	at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
jvm 1    | 	at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:93)
jvm 1    | 	at org.apache.james.container.spring.JamesServerApplicationContext.<init>(JamesServerApplicationContext.java:37)
jvm 1    | 	at org.apache.james.container.spring.Main.main(Main.java:29)
jvm 1    | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
jvm 1    | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
jvm 1    | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
jvm 1    | 	at java.lang.reflect.Method.invoke(Method.java:597)
jvm 1    | 	at org.tanukisoftware.wrapper.WrapperSimpleApp.run(WrapperSimpleApp.java:240)
jvm 1    | 	at java.lang.Thread.run(Thread.java:662)
jvm 1    | Caused by:
org.springframework.beans.factory.BeanCreationException: Error
creating bean with name 'mailstore' defined in class path resource
[spring-beans.xml]: Initialization of bean failed; nested exception is
org.springframework.beans.FatalBeanException: Unable to execute
lifecycle method on beanmailstore; nested exception is
org.apache.commons.configuration.ConfigurationException: Unable to
load configuration for component mailstore
jvm 1    | 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:527)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
jvm 1    | 	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
jvm 1    | 	at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:435)
jvm 1    | 	at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:409)
jvm 1    | 	at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:541)
jvm 1    | 	at org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:156)
jvm 1    | 	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:84)
jvm 1    | 	at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessPropertyValues(CommonAnnotationBeanPostProcessor.java:297)
jvm 1    | 	... 64 more
jvm 1    | Caused by: org.springframework.beans.FatalBeanException:
Unable to execute lifecycle method on beanmailstore; nested exception
is org.apache.commons.configuration.ConfigurationException: Unable to
load configuration for component mailstore
jvm 1    | 	at org.apache.james.container.spring.lifecycle.AbstractLifeCycleBeanPostProcessor.postProcessBeforeInitialization(AbstractLifeCycleBeanPostProcessor.java:70)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:394)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1413)
jvm 1    | 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
jvm 1    | 	... 75 more
jvm 1    | Caused by:
org.apache.commons.configuration.ConfigurationException: Unable to
load configuration for component mailstore
jvm 1    | 	at org.apache.james.container.spring.lifecycle.SpringConfigurationProvider.getConfiguration(SpringConfigurationProvider.java:113)
jvm 1    | 	at org.apache.james.container.spring.lifecycle.CommonsConfigurableBeanPostProcessor.executeLifecycleMethodBeforeInitChecked(CommonsConfigurableBeanPostProcessor.java:35)
...

Am I missing something in the configuration?

Thanks,
Raju

---------------------------------------------------------------------
To unsubscribe, e-mail: server-user-unsubscribe@james.apache.org
For additional commands, e-mail: server-user-help@james.apache.org


Re: Setting up a mailing list for James 3.0 M2

Posted by Raju Bitter <r....@googlemail.com>.
Thanks for your detailed response, Eric. I'll have a look into the
mailing list archives tomorrow, and keep you updated on what I find
out. I'll do some testing early next week on my local machine with the
source code.

Thanks again,
Raju

On Fri, Nov 26, 2010 at 11:20 AM, Eric Charles <er...@apache.org> wrote:
> Hi Raju,
>
> I personally never used james mailing list, even though it's also in my
> plans.
>
> To my knowledge, I don't think much work was done on mailing list for James
> V3, meaning it was "simply" migrated/renamed from V2.
> They were migrated from 2.3 taking into account the new injection mechanism
> of 3.0, so they should be ready to server mailing lists.
>
> For the doc, I simply copied for now
> http://james.apache.org/server/2.3.0/mailing_lists.html to
> http://james.apache.org/server/3/config-listmanager.html.
> I also added on that page a mention of the miResources.xml file where SQL
> resides.
>
> Now, I have the same question as you: how to configure and let work the
> whole stuff.
> I searched on the web site (archives), james wiki but didn't find a howto.
> Probably this question was already asked on the james mailinglist (I didn't
> search).
>
> But it's well probable that code debugging/adjustement will be needed to
> make it work, as you could be the first user of this feature in V3.
> I had a quick look at a few classes of the james mailet project
> example:
> https://svn.apache.org/repos/asf/james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/CommandListservManager.java
>
> I could also jump and help you if you like, and further document how to
> configure.
>
> TKs,
>
> Eric
>
>
> On 26/11/2010 10:44, Raju Bitter wrote:
>>
>> Stupid mistake, I had extra whitespace in the mailetcontainer.xml
>> file. Now everything seems to be working.
>>
>> How can people subscribe to a list created like that? Does the
>> documentation on this page still apply?
>> http://james.apache.org/server/FAQ.html#1
>>
>> Let's assume my mailing list address is: new-mailing-list@mydomain.com
>>
>> To subscribe to the mailing list, I'd sent an email to
>> new-mailing-list-on@mydomain.com? How can I find out if that's working
>> through the log files?
>>
>> - Raju
>>
>>
>> On Fri, Nov 26, 2010 at 10:05 AM, Raju Bitter
>> <r....@googlemail.com>  wrote:
>>>
>>> I'm trying to set up a mailing lists for 3.0M2, using the
>>> documentation I found here:
>>> http://james.apache.org/server/2.3.0/mailing_lists.html
>>>
>>> What are the changes required to make that work in 3.0M2? Here's what
>>> I've tried:
>>>
>>> 1) Created a email address for the mailing list
>>>
>>> 2) I added the processor to mailetcontainer.xml
>>>  <!-- Mailing lists -->
>>>  <processor name="mailinglists">
>>>    <mailet match="CommandForListserv=new-mailing-list@mydomain.com"
>>> class="AvalonListservManager">
>>>      <repositoryName>new-mailing-list-repo</repositoryName>
>>>    </mailet>
>>>    <mailet match="RecipientIs=new-mailing-list@mydomain.com"
>>> class="AvalonListserv">
>>>      <repositoryName>new-mailing-list-repo</repositoryName>
>>>    </mailet>
>>>  </processor>
>>> </mailetcontainer>
>>>
>>> 3) Added a repository for the list to usersrepository.xml
>>>  <repository name="new-mailing-list-repo"
>>>
>>>  class="org.apache.james.userrepository.ListUsersJdbcRepository"
>>>              destinationURL="db://maildb/lists/new-mailing-list-repo">
>>>    <sqlFile>file://conf/sqlResources.xml</sqlFile>
>>>  </repository>
>>> </usersrepository>
>>>
>>> I ran into an exception here, since the following class could not be
>>> found:
>>> org.apache.james.userrepository.ListUsersJdbcRepository
>>>
>>> It seems the new classname is:
>>> org.apache.james.user.jdbc.ListUsersJdbcRepository
>>>
>>> But using that, I get the following error:
>>> jvm 1    | [Fatal Error] :2:6: The processing instruction target
>>> matching "[xX][mM][lL]" is not allowed.
>>> jvm 1    | org.springframework.beans.factory.BeanCreationException:
>>> Error creating bean with name
>>> 'org.apache.james.transport.mailets.ToRepository': Injection of
>>> resource dependencies failed; nested exception is
>>> org.springframework.beans.factory.BeanCreationException: Error
>>> creating bean with name 'mailstore' defined in class path resource
>>> [spring-beans.xml]: Initialization of bean failed; nested exception is
>>> org.springframework.beans.FatalBeanException: Unable to execute
>>> lifecycle method on beanmailstore; nested exception is
>>> org.apache.commons.configuration.ConfigurationException: Unable to
>>> load configuration for component mailstore
>>> jvm 1    |      at
>>> org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessPropertyValues(CommonAnnotationBeanPostProcessor.java:300)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1074)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireBean(AbstractAutowireCapableBeanFactory.java:295)
>>> jvm 1    |      at
>>> org.apache.james.container.spring.SpringInstanceFactory.newInstance(SpringInstanceFactory.java:73)
>>> jvm 1    |      at
>>> org.apache.james.container.spring.SpringInstanceFactory.newInstance(SpringInstanceFactory.java:48)
>>> jvm 1    |      at
>>> org.apache.james.mailetcontainer.lib.JamesMailetLoader.getMailet(JamesMailetLoader.java:57)
>>> jvm 1    |      at
>>> org.apache.james.mailetcontainer.camel.CamelMailProcessorList$SpoolRouteBuilder.configure(CamelMailProcessorList.java:422)
>>> jvm 1    |      at
>>> org.apache.camel.builder.RouteBuilder.checkInitialized(RouteBuilder.java:295)
>>> jvm 1    |      at
>>> org.apache.camel.builder.RouteBuilder.configureRoutes(RouteBuilder.java:250)
>>> jvm 1    |      at
>>> org.apache.camel.builder.RouteBuilder.addRoutesToCamelContext(RouteBuilder.java:236)
>>> jvm 1    |      at
>>> org.apache.camel.impl.DefaultCamelContext.addRoutes(DefaultCamelContext.java:552)
>>> jvm 1    |      at
>>> org.apache.james.mailetcontainer.camel.CamelMailProcessorList.init(CamelMailProcessorList.java:105)
>>> jvm 1    |      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
>>> Method)
>>> jvm 1    |      at
>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>> jvm 1    |      at
>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>> jvm 1    |      at java.lang.reflect.Method.invoke(Method.java:597)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:340)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:293)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:130)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:394)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1413)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
>>> jvm 1    |      at
>>> org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:435)
>>> jvm 1    |      at
>>> org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:409)
>>> jvm 1    |      at
>>> org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:541)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:156)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:84)
>>> jvm 1    |      at
>>> org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessPropertyValues(CommonAnnotationBeanPostProcessor.java:297)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1074)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:322)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveManagedMap(BeanDefinitionValueResolver.java:378)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:161)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1325)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1086)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:580)
>>> jvm 1    |      at
>>> org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
>>> jvm 1    |      at
>>> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425)
>>> jvm 1    |      at
>>> org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
>>> jvm 1    |      at
>>> org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:93)
>>> jvm 1    |      at
>>> org.apache.james.container.spring.JamesServerApplicationContext.<init>(JamesServerApplicationContext.java:37)
>>> jvm 1    |      at
>>> org.apache.james.container.spring.Main.main(Main.java:29)
>>> jvm 1    |      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
>>> Method)
>>> jvm 1    |      at
>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>> jvm 1    |      at
>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>> jvm 1    |      at java.lang.reflect.Method.invoke(Method.java:597)
>>> jvm 1    |      at
>>> org.tanukisoftware.wrapper.WrapperSimpleApp.run(WrapperSimpleApp.java:240)
>>> jvm 1    |      at java.lang.Thread.run(Thread.java:662)
>>> jvm 1    | Caused by:
>>> org.springframework.beans.factory.BeanCreationException: Error
>>> creating bean with name 'mailstore' defined in class path resource
>>> [spring-beans.xml]: Initialization of bean failed; nested exception is
>>> org.springframework.beans.FatalBeanException: Unable to execute
>>> lifecycle method on beanmailstore; nested exception is
>>> org.apache.commons.configuration.ConfigurationException: Unable to
>>> load configuration for component mailstore
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:527)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
>>> jvm 1    |      at
>>> org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:435)
>>> jvm 1    |      at
>>> org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:409)
>>> jvm 1    |      at
>>> org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:541)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:156)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:84)
>>> jvm 1    |      at
>>> org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessPropertyValues(CommonAnnotationBeanPostProcessor.java:297)
>>> jvm 1    |      ... 64 more
>>> jvm 1    | Caused by: org.springframework.beans.FatalBeanException:
>>> Unable to execute lifecycle method on beanmailstore; nested exception
>>> is org.apache.commons.configuration.ConfigurationException: Unable to
>>> load configuration for component mailstore
>>> jvm 1    |      at
>>> org.apache.james.container.spring.lifecycle.AbstractLifeCycleBeanPostProcessor.postProcessBeforeInitialization(AbstractLifeCycleBeanPostProcessor.java:70)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:394)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1413)
>>> jvm 1    |      at
>>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
>>> jvm 1    |      ... 75 more
>>> jvm 1    | Caused by:
>>> org.apache.commons.configuration.ConfigurationException: Unable to
>>> load configuration for component mailstore
>>> jvm 1    |      at
>>> org.apache.james.container.spring.lifecycle.SpringConfigurationProvider.getConfiguration(SpringConfigurationProvider.java:113)
>>> jvm 1    |      at
>>> org.apache.james.container.spring.lifecycle.CommonsConfigurableBeanPostProcessor.executeLifecycleMethodBeforeInitChecked(CommonsConfigurableBeanPostProcessor.java:35)
>>> ...
>>>
>>> Am I missing something in the configuration?
>>>
>>> Thanks,
>>> Raju
>>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: server-user-unsubscribe@james.apache.org
>> For additional commands, e-mail: server-user-help@james.apache.org
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: server-user-unsubscribe@james.apache.org
> For additional commands, e-mail: server-user-help@james.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: server-user-unsubscribe@james.apache.org
For additional commands, e-mail: server-user-help@james.apache.org


Re: Setting up a mailing list for James 3.0 M2

Posted by Eric Charles <er...@apache.org>.
Hi Raju,

I personally never used james mailing list, even though it's also in my 
plans.

To my knowledge, I don't think much work was done on mailing list for 
James V3, meaning it was "simply" migrated/renamed from V2.
They were migrated from 2.3 taking into account the new injection 
mechanism of 3.0, so they should be ready to server mailing lists.

For the doc, I simply copied for now 
http://james.apache.org/server/2.3.0/mailing_lists.html to 
http://james.apache.org/server/3/config-listmanager.html.
I also added on that page a mention of the miResources.xml file where 
SQL resides.

Now, I have the same question as you: how to configure and let work the 
whole stuff.
I searched on the web site (archives), james wiki but didn't find a howto.
Probably this question was already asked on the james mailinglist (I 
didn't search).

But it's well probable that code debugging/adjustement will be needed to 
make it work, as you could be the first user of this feature in V3.
I had a quick look at a few classes of the james mailet project
example: 
https://svn.apache.org/repos/asf/james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/CommandListservManager.java

I could also jump and help you if you like, and further document how to 
configure.

TKs,

Eric


On 26/11/2010 10:44, Raju Bitter wrote:
> Stupid mistake, I had extra whitespace in the mailetcontainer.xml
> file. Now everything seems to be working.
>
> How can people subscribe to a list created like that? Does the
> documentation on this page still apply?
> http://james.apache.org/server/FAQ.html#1
>
> Let's assume my mailing list address is: new-mailing-list@mydomain.com
>
> To subscribe to the mailing list, I'd sent an email to
> new-mailing-list-on@mydomain.com? How can I find out if that's working
> through the log files?
>
> - Raju
>
>
> On Fri, Nov 26, 2010 at 10:05 AM, Raju Bitter
> <r....@googlemail.com>  wrote:
>> I'm trying to set up a mailing lists for 3.0M2, using the
>> documentation I found here:
>> http://james.apache.org/server/2.3.0/mailing_lists.html
>>
>> What are the changes required to make that work in 3.0M2? Here's what
>> I've tried:
>>
>> 1) Created a email address for the mailing list
>>
>> 2) I added the processor to mailetcontainer.xml
>>   <!-- Mailing lists -->
>>   <processor name="mailinglists">
>>     <mailet match="CommandForListserv=new-mailing-list@mydomain.com"
>> class="AvalonListservManager">
>>       <repositoryName>new-mailing-list-repo</repositoryName>
>>     </mailet>
>>     <mailet match="RecipientIs=new-mailing-list@mydomain.com"
>> class="AvalonListserv">
>>       <repositoryName>new-mailing-list-repo</repositoryName>
>>     </mailet>
>>   </processor>
>> </mailetcontainer>
>>
>> 3) Added a repository for the list to usersrepository.xml
>>   <repository name="new-mailing-list-repo"
>>               class="org.apache.james.userrepository.ListUsersJdbcRepository"
>>               destinationURL="db://maildb/lists/new-mailing-list-repo">
>>     <sqlFile>file://conf/sqlResources.xml</sqlFile>
>>   </repository>
>> </usersrepository>
>>
>> I ran into an exception here, since the following class could not be found:
>> org.apache.james.userrepository.ListUsersJdbcRepository
>>
>> It seems the new classname is:
>> org.apache.james.user.jdbc.ListUsersJdbcRepository
>>
>> But using that, I get the following error:
>> jvm 1    | [Fatal Error] :2:6: The processing instruction target
>> matching "[xX][mM][lL]" is not allowed.
>> jvm 1    | org.springframework.beans.factory.BeanCreationException:
>> Error creating bean with name
>> 'org.apache.james.transport.mailets.ToRepository': Injection of
>> resource dependencies failed; nested exception is
>> org.springframework.beans.factory.BeanCreationException: Error
>> creating bean with name 'mailstore' defined in class path resource
>> [spring-beans.xml]: Initialization of bean failed; nested exception is
>> org.springframework.beans.FatalBeanException: Unable to execute
>> lifecycle method on beanmailstore; nested exception is
>> org.apache.commons.configuration.ConfigurationException: Unable to
>> load configuration for component mailstore
>> jvm 1    |      at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessPropertyValues(CommonAnnotationBeanPostProcessor.java:300)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1074)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireBean(AbstractAutowireCapableBeanFactory.java:295)
>> jvm 1    |      at org.apache.james.container.spring.SpringInstanceFactory.newInstance(SpringInstanceFactory.java:73)
>> jvm 1    |      at org.apache.james.container.spring.SpringInstanceFactory.newInstance(SpringInstanceFactory.java:48)
>> jvm 1    |      at org.apache.james.mailetcontainer.lib.JamesMailetLoader.getMailet(JamesMailetLoader.java:57)
>> jvm 1    |      at org.apache.james.mailetcontainer.camel.CamelMailProcessorList$SpoolRouteBuilder.configure(CamelMailProcessorList.java:422)
>> jvm 1    |      at org.apache.camel.builder.RouteBuilder.checkInitialized(RouteBuilder.java:295)
>> jvm 1    |      at org.apache.camel.builder.RouteBuilder.configureRoutes(RouteBuilder.java:250)
>> jvm 1    |      at org.apache.camel.builder.RouteBuilder.addRoutesToCamelContext(RouteBuilder.java:236)
>> jvm 1    |      at org.apache.camel.impl.DefaultCamelContext.addRoutes(DefaultCamelContext.java:552)
>> jvm 1    |      at org.apache.james.mailetcontainer.camel.CamelMailProcessorList.init(CamelMailProcessorList.java:105)
>> jvm 1    |      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> jvm 1    |      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>> jvm 1    |      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>> jvm 1    |      at java.lang.reflect.Method.invoke(Method.java:597)
>> jvm 1    |      at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:340)
>> jvm 1    |      at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:293)
>> jvm 1    |      at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:130)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:394)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1413)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
>> jvm 1    |      at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
>> jvm 1    |      at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:435)
>> jvm 1    |      at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:409)
>> jvm 1    |      at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:541)
>> jvm 1    |      at org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:156)
>> jvm 1    |      at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:84)
>> jvm 1    |      at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessPropertyValues(CommonAnnotationBeanPostProcessor.java:297)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1074)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
>> jvm 1    |      at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
>> jvm 1    |      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:322)
>> jvm 1    |      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106)
>> jvm 1    |      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveManagedMap(BeanDefinitionValueResolver.java:378)
>> jvm 1    |      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:161)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1325)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1086)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
>> jvm 1    |      at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
>> jvm 1    |      at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:580)
>> jvm 1    |      at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
>> jvm 1    |      at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425)
>> jvm 1    |      at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
>> jvm 1    |      at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:93)
>> jvm 1    |      at org.apache.james.container.spring.JamesServerApplicationContext.<init>(JamesServerApplicationContext.java:37)
>> jvm 1    |      at org.apache.james.container.spring.Main.main(Main.java:29)
>> jvm 1    |      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> jvm 1    |      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>> jvm 1    |      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>> jvm 1    |      at java.lang.reflect.Method.invoke(Method.java:597)
>> jvm 1    |      at org.tanukisoftware.wrapper.WrapperSimpleApp.run(WrapperSimpleApp.java:240)
>> jvm 1    |      at java.lang.Thread.run(Thread.java:662)
>> jvm 1    | Caused by:
>> org.springframework.beans.factory.BeanCreationException: Error
>> creating bean with name 'mailstore' defined in class path resource
>> [spring-beans.xml]: Initialization of bean failed; nested exception is
>> org.springframework.beans.FatalBeanException: Unable to execute
>> lifecycle method on beanmailstore; nested exception is
>> org.apache.commons.configuration.ConfigurationException: Unable to
>> load configuration for component mailstore
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:527)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
>> jvm 1    |      at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
>> jvm 1    |      at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:435)
>> jvm 1    |      at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:409)
>> jvm 1    |      at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:541)
>> jvm 1    |      at org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:156)
>> jvm 1    |      at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:84)
>> jvm 1    |      at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessPropertyValues(CommonAnnotationBeanPostProcessor.java:297)
>> jvm 1    |      ... 64 more
>> jvm 1    | Caused by: org.springframework.beans.FatalBeanException:
>> Unable to execute lifecycle method on beanmailstore; nested exception
>> is org.apache.commons.configuration.ConfigurationException: Unable to
>> load configuration for component mailstore
>> jvm 1    |      at org.apache.james.container.spring.lifecycle.AbstractLifeCycleBeanPostProcessor.postProcessBeforeInitialization(AbstractLifeCycleBeanPostProcessor.java:70)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:394)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1413)
>> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
>> jvm 1    |      ... 75 more
>> jvm 1    | Caused by:
>> org.apache.commons.configuration.ConfigurationException: Unable to
>> load configuration for component mailstore
>> jvm 1    |      at org.apache.james.container.spring.lifecycle.SpringConfigurationProvider.getConfiguration(SpringConfigurationProvider.java:113)
>> jvm 1    |      at org.apache.james.container.spring.lifecycle.CommonsConfigurableBeanPostProcessor.executeLifecycleMethodBeforeInitChecked(CommonsConfigurableBeanPostProcessor.java:35)
>> ...
>>
>> Am I missing something in the configuration?
>>
>> Thanks,
>> Raju
>>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: server-user-unsubscribe@james.apache.org
> For additional commands, e-mail: server-user-help@james.apache.org
>


---------------------------------------------------------------------
To unsubscribe, e-mail: server-user-unsubscribe@james.apache.org
For additional commands, e-mail: server-user-help@james.apache.org


Re: Setting up a mailing list for James 3.0 M2

Posted by Raju Bitter <r....@googlemail.com>.
Stupid mistake, I had extra whitespace in the mailetcontainer.xml
file. Now everything seems to be working.

How can people subscribe to a list created like that? Does the
documentation on this page still apply?
http://james.apache.org/server/FAQ.html#1

Let's assume my mailing list address is: new-mailing-list@mydomain.com

To subscribe to the mailing list, I'd sent an email to
new-mailing-list-on@mydomain.com? How can I find out if that's working
through the log files?

- Raju


On Fri, Nov 26, 2010 at 10:05 AM, Raju Bitter
<r....@googlemail.com> wrote:
> I'm trying to set up a mailing lists for 3.0M2, using the
> documentation I found here:
> http://james.apache.org/server/2.3.0/mailing_lists.html
>
> What are the changes required to make that work in 3.0M2? Here's what
> I've tried:
>
> 1) Created a email address for the mailing list
>
> 2) I added the processor to mailetcontainer.xml
>  <!-- Mailing lists -->
>  <processor name="mailinglists">
>    <mailet match="CommandForListserv=new-mailing-list@mydomain.com"
> class="AvalonListservManager">
>      <repositoryName>new-mailing-list-repo</repositoryName>
>    </mailet>
>    <mailet match="RecipientIs=new-mailing-list@mydomain.com"
> class="AvalonListserv">
>      <repositoryName>new-mailing-list-repo</repositoryName>
>    </mailet>
>  </processor>
> </mailetcontainer>
>
> 3) Added a repository for the list to usersrepository.xml
>  <repository name="new-mailing-list-repo"
>              class="org.apache.james.userrepository.ListUsersJdbcRepository"
>              destinationURL="db://maildb/lists/new-mailing-list-repo">
>    <sqlFile>file://conf/sqlResources.xml</sqlFile>
>  </repository>
> </usersrepository>
>
> I ran into an exception here, since the following class could not be found:
> org.apache.james.userrepository.ListUsersJdbcRepository
>
> It seems the new classname is:
> org.apache.james.user.jdbc.ListUsersJdbcRepository
>
> But using that, I get the following error:
> jvm 1    | [Fatal Error] :2:6: The processing instruction target
> matching "[xX][mM][lL]" is not allowed.
> jvm 1    | org.springframework.beans.factory.BeanCreationException:
> Error creating bean with name
> 'org.apache.james.transport.mailets.ToRepository': Injection of
> resource dependencies failed; nested exception is
> org.springframework.beans.factory.BeanCreationException: Error
> creating bean with name 'mailstore' defined in class path resource
> [spring-beans.xml]: Initialization of bean failed; nested exception is
> org.springframework.beans.FatalBeanException: Unable to execute
> lifecycle method on beanmailstore; nested exception is
> org.apache.commons.configuration.ConfigurationException: Unable to
> load configuration for component mailstore
> jvm 1    |      at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessPropertyValues(CommonAnnotationBeanPostProcessor.java:300)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1074)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireBean(AbstractAutowireCapableBeanFactory.java:295)
> jvm 1    |      at org.apache.james.container.spring.SpringInstanceFactory.newInstance(SpringInstanceFactory.java:73)
> jvm 1    |      at org.apache.james.container.spring.SpringInstanceFactory.newInstance(SpringInstanceFactory.java:48)
> jvm 1    |      at org.apache.james.mailetcontainer.lib.JamesMailetLoader.getMailet(JamesMailetLoader.java:57)
> jvm 1    |      at org.apache.james.mailetcontainer.camel.CamelMailProcessorList$SpoolRouteBuilder.configure(CamelMailProcessorList.java:422)
> jvm 1    |      at org.apache.camel.builder.RouteBuilder.checkInitialized(RouteBuilder.java:295)
> jvm 1    |      at org.apache.camel.builder.RouteBuilder.configureRoutes(RouteBuilder.java:250)
> jvm 1    |      at org.apache.camel.builder.RouteBuilder.addRoutesToCamelContext(RouteBuilder.java:236)
> jvm 1    |      at org.apache.camel.impl.DefaultCamelContext.addRoutes(DefaultCamelContext.java:552)
> jvm 1    |      at org.apache.james.mailetcontainer.camel.CamelMailProcessorList.init(CamelMailProcessorList.java:105)
> jvm 1    |      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> jvm 1    |      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> jvm 1    |      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> jvm 1    |      at java.lang.reflect.Method.invoke(Method.java:597)
> jvm 1    |      at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:340)
> jvm 1    |      at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:293)
> jvm 1    |      at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:130)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:394)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1413)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
> jvm 1    |      at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
> jvm 1    |      at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:435)
> jvm 1    |      at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:409)
> jvm 1    |      at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:541)
> jvm 1    |      at org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:156)
> jvm 1    |      at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:84)
> jvm 1    |      at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessPropertyValues(CommonAnnotationBeanPostProcessor.java:297)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1074)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
> jvm 1    |      at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
> jvm 1    |      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:322)
> jvm 1    |      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106)
> jvm 1    |      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveManagedMap(BeanDefinitionValueResolver.java:378)
> jvm 1    |      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:161)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1325)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1086)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
> jvm 1    |      at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
> jvm 1    |      at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:580)
> jvm 1    |      at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
> jvm 1    |      at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425)
> jvm 1    |      at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
> jvm 1    |      at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:93)
> jvm 1    |      at org.apache.james.container.spring.JamesServerApplicationContext.<init>(JamesServerApplicationContext.java:37)
> jvm 1    |      at org.apache.james.container.spring.Main.main(Main.java:29)
> jvm 1    |      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> jvm 1    |      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> jvm 1    |      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> jvm 1    |      at java.lang.reflect.Method.invoke(Method.java:597)
> jvm 1    |      at org.tanukisoftware.wrapper.WrapperSimpleApp.run(WrapperSimpleApp.java:240)
> jvm 1    |      at java.lang.Thread.run(Thread.java:662)
> jvm 1    | Caused by:
> org.springframework.beans.factory.BeanCreationException: Error
> creating bean with name 'mailstore' defined in class path resource
> [spring-beans.xml]: Initialization of bean failed; nested exception is
> org.springframework.beans.FatalBeanException: Unable to execute
> lifecycle method on beanmailstore; nested exception is
> org.apache.commons.configuration.ConfigurationException: Unable to
> load configuration for component mailstore
> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:527)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
> jvm 1    |      at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
> jvm 1    |      at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:435)
> jvm 1    |      at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:409)
> jvm 1    |      at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:541)
> jvm 1    |      at org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:156)
> jvm 1    |      at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:84)
> jvm 1    |      at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessPropertyValues(CommonAnnotationBeanPostProcessor.java:297)
> jvm 1    |      ... 64 more
> jvm 1    | Caused by: org.springframework.beans.FatalBeanException:
> Unable to execute lifecycle method on beanmailstore; nested exception
> is org.apache.commons.configuration.ConfigurationException: Unable to
> load configuration for component mailstore
> jvm 1    |      at org.apache.james.container.spring.lifecycle.AbstractLifeCycleBeanPostProcessor.postProcessBeforeInitialization(AbstractLifeCycleBeanPostProcessor.java:70)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:394)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1413)
> jvm 1    |      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
> jvm 1    |      ... 75 more
> jvm 1    | Caused by:
> org.apache.commons.configuration.ConfigurationException: Unable to
> load configuration for component mailstore
> jvm 1    |      at org.apache.james.container.spring.lifecycle.SpringConfigurationProvider.getConfiguration(SpringConfigurationProvider.java:113)
> jvm 1    |      at org.apache.james.container.spring.lifecycle.CommonsConfigurableBeanPostProcessor.executeLifecycleMethodBeforeInitChecked(CommonsConfigurableBeanPostProcessor.java:35)
> ...
>
> Am I missing something in the configuration?
>
> Thanks,
> Raju
>

---------------------------------------------------------------------
To unsubscribe, e-mail: server-user-unsubscribe@james.apache.org
For additional commands, e-mail: server-user-help@james.apache.org