Hi Max, JAMES works fine with postgresql 8.3 and jdbc driver postgresql-8.3-605.jdbc4.jar .
Maybe you use 8.4 ? Ps: You need to svn update your build because there was some bug in the VirtualUser mapping code 2010/4/27 Norman Maurer <[email protected]>: > Be sure to include all informations like postgresql version / jdbc > driver version etc > > Thx, > Norman > > > 2010/4/27 Norman Maurer <[email protected]>: >> Interesting. I will try to reproduce this issue and try to find out if >> its a bug in openjpa.. >> >> Thx, >> Norman >> >> >> 2010/4/27 Max Levinson <[email protected]>: >>> Hi Norman, >>> >>> I will try to open JIRA bug report tomorrow. I installed MySQL and connected >>> it with James, and it works fine(all tables were generated and I was able to >>> add user without error), so I think you're right, this problem occurs only >>> when you use Postgres. >>> >>> 26 апреля 2010 г. 19:48 пользователь Norman Maurer >>> <[email protected]>написал: >>> >>>> Hi Max, >>>> >>>> could you open a jira bugreport ? >>>> Can you confirm that the problems only exists when using postgres? >>>> >>>> Thx >>>> Norman >>>> >>>> 2010/4/26, Max Levinson <[email protected]>: >>>> > Hi Norman, >>>> > >>>> > Yes I confirm I don't have Message table in my db. >>>> > >>>> > 23 апреля 2010 г. 18:35 пользователь Norman Maurer < >>>> > [email protected]> написал: >>>> > >>>> >> You don't have the Message table in your DB ? Are you sure ? >>>> >> >>>> >> Bye, >>>> >> Norman >>>> >> >>>> >> 2010/4/23 Max Levinson <[email protected]>: >>>> >> > Hi Norman, >>>> >> > >>>> >> > Thanks for your reply. But I haven't got for which table and for each >>>> >> field >>>> >> > of this table I need to change type of a field, if we are talking >>>> about >>>> >> > >>>> >> > Message table and field content, I currenly don't have it in my DB. >>>> What >>>> >> is >>>> >> > the table structure for this and which config option should make it? >>>> >> > >>>> >> > Thanks. >>>> >> > >>>> >> > 23 апреля 2010 г. 16:32 пользователь Norman Maurer < >>>> >> > [email protected]> написал: >>>> >> > >>>> >> >> Hi Max, >>>> >> >> >>>> >> >> at least one of the problems seems like a OpenJPA bug for me. >>>> >> >> >>>> >> >> Could you try to alter the Message Table and set the content column >>>> to >>>> >> >> the type of "LONGBLOG" and restart JAMES? >>>> >> >> >>>> >> >> The other problem seems like a race condition. I will try to >>>> reproduce >>>> >> it.. >>>> >> >> >>>> >> >> Thx, >>>> >> >> Norman >>>> >> >> >>>> >> >> >>>> >> >> 2010/4/23 Max Levinson <[email protected]>: >>>> >> >> > Hi guys, >>>> >> >> > >>>> >> >> > I am confirming that I have the same error as Oleg has when I >>>> >> uncomment >>>> >> >> this >>>> >> >> > <bean id="domainlist" >>>> >> class="org.apache.james.vut.JDBCVirtualUserTable" >>>> >> >> /> >>>> >> >> > >>>> >> >> > I read this post and tried to follow Norman's recomendations, so I >>>> >> >> commented >>>> >> >> > out >>>> >> >> > >>>> >> >> > <bean id="domainlist" >>>> >> class="org.apache.james.vut.JDBCVirtualUserTable" >>>> >> >> /> >>>> >> >> > >>>> >> >> > and uncommented <bean id="domainlist" >>>> >> >> > class="org.apache.james.domain.JDBCDomainList"/> >>>> >> >> > >>>> >> >> > Then I connected to remote manager to add domain and user >>>> >> >> > >>>> >> >> > [r...@srv1 conf]# telnet localhost 4555 >>>> >> >> > Trying 127.0.0.1... >>>> >> >> > Connected to localhost.localdomain (127.0.0.1). >>>> >> >> > Escape character is '^]'. >>>> >> >> > JAMES Remote Administration Tool >>>> >> >> > Please enter your login and password >>>> >> >> > Login id: >>>> >> >> > root >>>> >> >> > Password: >>>> >> >> > root >>>> >> >> > Welcome root. HELP for a list of commands >>>> >> >> > adddomain testtest.com >>>> >> >> > Adding domain testtest.com successful >>>> >> >> > adduser [email protected] password567 >>>> >> >> > >>>> >> >> > So when I am adding this user nothing happens next and I am getting >>>> >> this >>>> >> >> > error in the log(Please bare in mind that I use postgreSQL as a >>>> DB): >>>> >> >> > >>>> >> >> > INFO 13:14:43,198 | james.remotemanager | Login for root >>>> successful >>>> >> >> > INFO 13:14:54,944 | james.domainlist | Add domain testtest.com to >>>> >> >> > DomainList >>>> >> >> > 196493 James INFO [NioProcessor-1] openjpa.Runtime - Starting >>>> >> OpenJPA >>>> >> >> > 1.2.2 >>>> >> >> > 196704 James INFO [NioProcessor-1] openjpa.jdbc.JDBC - Using >>>> >> >> dictionary >>>> >> >> > class "org.apache.openjpa.jdbc.sql.PostgresDictionary". >>>> >> >> > ERROR 13:16:53,236 | james.remotemanager | Caught exception: null >>>> >> >> > <openjpa-1.2.2-r422266:898935 fatal user error> >>>> >> >> > org.apache.openjpa.persistence.ArgumentException: >>>> >> >> > "org.apache.james.imap.jpa.mail.model.JPAMessage.content" declares >>>> a >>>> >> >> column >>>> >> >> > that is not compatible with the expected type "blob". Column >>>> >> >> > details: >>>> >> >> > Full Name: Message.content >>>> >> >> > Type: integer >>>> >> >> > Size: 1048576000 >>>> >> >> > Default: null >>>> >> >> > Not Null: false >>>> >> >> > >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.jdbc.meta.MappingInfo.mergeColumn(MappingInfo.java:662) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.jdbc.meta.MappingInfo.createColumns(MappingInfo.java:518) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.jdbc.meta.ValueMappingInfo.getColumns(ValueMappingInfo.java:143) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.jdbc.meta.strats.HandlerStrategies.map(HandlerStrategies.java:63) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.jdbc.meta.strats.HandlerFieldStrategy.map(HandlerFieldStrategy.java:81) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.jdbc.meta.FieldMapping.setStrategy(FieldMapping.java:121) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.jdbc.meta.RuntimeStrategyInstaller.installStrategy(RuntimeStrategyInstaller.java:80) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.jdbc.meta.FieldMapping.resolveMapping(FieldMapping.java:454) >>>> >> >> > at >>>> >> >> > >>>> >> org.apache.openjpa.jdbc.meta.FieldMapping.resolve(FieldMapping.java:419) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.jdbc.meta.ClassMapping.resolveNonRelationMappings(ClassMapping.java:881) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.jdbc.meta.MappingRepository.prepareMapping(MappingRepository.java:418) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.meta.MetaDataRepository.preMapping(MetaDataRepository.java:757) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.meta.MetaDataRepository.resolve(MetaDataRepository.java:644) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.meta.MetaDataRepository.getMetaDataInternal(MetaDataRepository.java:393) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.meta.MetaDataRepository.getMetaDataLocking(MetaDataRepository.java:366) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataRepository.java:360) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.jdbc.meta.MappingRepository.getMapping(MappingRepository.java:356) >>>> >> >> > at >>>> >> >> > >>>> >> >>>> org.apache.openjpa.jdbc.meta.MappingTool.getMapping(MappingTool.java:676) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.jdbc.meta.MappingTool.buildSchema(MappingTool.java:748) >>>> >> >> > at >>>> >> >> > org.apache.openjpa.jdbc.meta.MappingTool.run(MappingTool.java:646) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:153) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.newBrokerImpl(JDBCBrokerFactory.java:119) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:189) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:142) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:192) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:145) >>>> >> >> > 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.springframework.orm.jpa.AbstractEntityManagerFactoryBean$ManagedEntityManagerFactoryInvocationHandler.invoke(AbstractEntityManagerFactoryBean.java:431) >>>> >> >> > at $Proxy27.createEntityManager(Unknown Source) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.james.server.jpa.JPAUsersRepository.contains(JPAUsersRepository.java:248) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.james.remotemanager.core.AddUserCmdHandler.onCommand(AddUserCmdHandler.java:105) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.james.remotemanager.core.AddUserCmdHandler.onCommand(AddUserCmdHandler.java:43) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.james.protocols.api.AbstractCommandDispatcher.onLine(AbstractCommandDispatcher.java:140) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.james.socket.mina.AbstractIoHandler.messageReceived(AbstractIoHandler.java:76) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:713) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:793) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:119) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:793) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:119) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:793) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.filter.codec.ProtocolCodecFilter$ProtocolDecoderOutputImpl.flush(ProtocolCodecFilter.java:375) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:229) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:793) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:119) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:793) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:119) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain.fireMessageReceived(DefaultIoFilterChain.java:426) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:638) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:598) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:587) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.polling.AbstractPollingIoProcessor.access$400(AbstractPollingIoProcessor.java:61) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:969) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) >>>> >> >> > at java.lang.Thread.run(Thread.java:619) >>>> >> >> > >>>> >> >> > Then i've tried to do it one more time, like this: >>>> >> >> > >>>> >> >> > adduser [email protected] password56778 >>>> >> >> > >>>> >> >> > I've got another error, related to SQL: >>>> >> >> > >>>> >> >> > ERROR 13:20:39,757 | james.remotemanager | Caught exception: null >>>> >> >> > <openjpa-1.2.2-r422266:898935 nonfatal user error> >>>> >> >> > org.apache.openjpa.persistence.ArgumentException: ERROR: relation >>>> >> >> > "jamesuser" does not exist >>>> >> >> > Позиция: 28 {prepstmnt 10041136 SELECT COUNT(t0.name) FROM >>>> JamesUser >>>> >> t0 >>>> >> >> > WHERE (t0.name = ?) [params=(String) [email protected]]} [code=0, >>>> >> >> > state=42P01] >>>> >> >> > at >>>> >> org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:857) >>>> >> >> > at >>>> >> org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:779) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.kernel.DelegatingQuery.execute(DelegatingQuery.java:525) >>>> >> >> > at >>>> >> >> > >>>> org.apache.openjpa.persistence.QueryImpl.execute(QueryImpl.java:254) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.persistence.QueryImpl.getSingleResult(QueryImpl.java:317) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.james.server.jpa.JPAUsersRepository.contains(JPAUsersRepository.java:251) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.james.remotemanager.core.AddUserCmdHandler.onCommand(AddUserCmdHandler.java:105) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.james.remotemanager.core.AddUserCmdHandler.onCommand(AddUserCmdHandler.java:43) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.james.protocols.api.AbstractCommandDispatcher.onLine(AbstractCommandDispatcher.java:140) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.james.socket.mina.AbstractIoHandler.messageReceived(AbstractIoHandler.java:76) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:713) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:793) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:119) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:793) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:119) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:793) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.filter.codec.ProtocolCodecFilter$ProtocolDecoderOutputImpl.flush(ProtocolCodecFilter.java:375) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:229) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:793) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:119) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:793) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:119) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.filterchain.DefaultIoFilterChain.fireMessageReceived(DefaultIoFilterChain.java:426) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:638) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:598) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:587) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.polling.AbstractPollingIoProcessor.access$400(AbstractPollingIoProcessor.java:61) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:969) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) >>>> >> >> > at java.lang.Thread.run(Thread.java:619) >>>> >> >> > Caused by: org.apache.openjpa.lib.jdbc.ReportingSQLException: >>>> ERROR: >>>> >> >> > relation "jamesuser" does not exist >>>> >> >> > Позиция: 28 {prepstmnt 10041136 SELECT COUNT(t0.name) FROM >>>> JamesUser >>>> >> t0 >>>> >> >> > WHERE (t0.name = ?) [params=(String) [email protected]]} [code=0, >>>> >> >> > state=42P01] >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:192) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.access$700(LoggingConnectionDecorator.java:57) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator$LoggingConnection$LoggingPreparedStatement.executeQuery(LoggingConnectionDecorator.java:852) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.lib.jdbc.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:262) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.jdbc.sql.PostgresDictionary$PostgresPreparedStatement.executeQuery(PostgresDictionary.java:520) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.lib.jdbc.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:262) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.jdbc.kernel.JDBCStoreManager$CancelPreparedStatement.executeQuery(JDBCStoreManager.java:1599) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.lib.jdbc.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:252) >>>> >> >> > at >>>> >> >> > >>>> >> org.apache.openjpa.jdbc.sql.SelectImpl.executeQuery(SelectImpl.java:509) >>>> >> >> > at >>>> >> >> > org.apache.openjpa.jdbc.sql.SelectImpl.execute(SelectImpl.java:384) >>>> >> >> > at >>>> >> >> > org.apache.openjpa.jdbc.sql.SelectImpl.execute(SelectImpl.java:339) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.jdbc.sql.LogicalUnion$UnionSelect.execute(LogicalUnion.java:420) >>>> >> >> > at >>>> >> >> > >>>> >> org.apache.openjpa.jdbc.sql.LogicalUnion.execute(LogicalUnion.java:230) >>>> >> >> > at >>>> >> >> > >>>> >> org.apache.openjpa.jdbc.sql.LogicalUnion.execute(LogicalUnion.java:220) >>>> >> >> > at >>>> >> >> > >>>> >> org.apache.openjpa.jdbc.sql.LogicalUnion.execute(LogicalUnion.java:206) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.jdbc.kernel.SelectResultObjectProvider.open(SelectResultObjectProvider.java:94) >>>> >> >> > at >>>> >> >> > >>>> >> >> >>>> >> >>>> org.apache.openjpa.kernel.QueryImpl$PackingResultObjectProvider.open(QueryImpl.java:1954) >>>> >> >> > at >>>> >> >> > >>>> org.apache.openjpa.kernel.QueryImpl.singleResult(QueryImpl.java:1284) >>>> >> >> > at >>>> >> >> org.apache.openjpa.kernel.QueryImpl.toResult(QueryImpl.java:1221) >>>> >> >> > at >>>> >> org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:990) >>>> >> >> > at >>>> >> org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:848) >>>> >> >> > ... 42 more >>>> >> >> > >>>> >> >> > >>>> >> >> > 2010/4/21 Norman Maurer <[email protected]> >>>> >> >> > >>>> >> >> >> Hi Eric, >>>> >> >> >> >>>> >> >> >> well its not an incorrect combination because even if the user >>>> does >>>> >> >> >> not exists on the server you could do something with a mailet to >>>> >> >> >> handle it.. The the pain you get when you are flexible ;) >>>> >> >> >> >>>> >> >> >> Bye, >>>> >> >> >> Norman >>>> >> >> >> >>>> >> >> >> 2010/4/21 Eric Charles <[email protected]>: >>>> >> >> >> > When you use a incorrect combination, james still says: >>>> >> >> >> > Adding mapping successful: true >>>> >> >> >> > >>>> >> >> >> > After this, the account you are using doesn't receive mails >>>> >> anymore. >>>> >> >> >> > >>>> >> >> >> > Maybe james should provide an error message if a incorrect >>>> >> combination >>>> >> >> is >>>> >> >> >> > invoked by the user. >>>> >> >> >> > Something like "[fromMapping] does not exist. Please use adduser >>>> >> >> >> > to >>>> >> >> >> create >>>> >> >> >> > [fromMapping]". >>>> >> >> >> > >>>> >> >> >> > Tks, >>>> >> >> >> > Eric >>>> >> >> >> > >>>> >> >> >> > >>>> >> >> >> > On 04/21/2010 09:22 AM, Eric Charles wrote: >>>> >> >> >> >> >>>> >> >> >> >> Yes, it works :) Tks! >>>> >> >> >> >> >>>> >> >> >> >> The documentation from help drove me into error: >>>> >> >> >> >> addmapping ([table=virtualusertablename]) [tou...@todomain] >>>> >> >> >> [fromMapping] >>>> >> >> >> >> >>>> >> >> >> >> ... and I tought I had tried this combination some time ago >>>> >> without >>>> >> >> >> >> success. >>>> >> >> >> >> >>>> >> >> >> >> So far so good. >>>> >> >> >> >> >>>> >> >> >> >> Eric >>>> >> >> >> >> >>>> >> >> >> >> >>>> >> >> >> >> On 04/21/2010 09:03 AM, Norman Maurer wrote: >>>> >> >> >> >>> >>>> >> >> >> >>> Ho Eric, >>>> >> >> >> >>> >>>> >> >> >> >>> I don't have the source handy atm. >>>> >> >> >> >>> >>>> >> >> >> >>> But I think it should Be: >>>> >> >> >> >>> >>>> >> >> >> >>> addmapping [email protected] [email protected] >>>> >> >> >> >>> >>>> >> >> >> >>> bye >>>> >> >> >> >>> Norman >>>> >> >> >> >>> >>>> >> >> >> >>> 2010/4/20, Eric Charles<[email protected]>: >>>> >> >> >> >>>> >>>> >> >> >> >>>> Hi Norman, >>>> >> >> >> >>>> >>>> >> >> >> >>>> Yes, spoolmanager.xml contains : >>>> >> >> >> >>>> <mailet match="All" class="VirtualUserTable"> >>>> >> >> >> >>>> <virtualusertable>DefaultVirtualUserTable</virtualusertable> >>>> >> >> >> >>>> </mailet> >>>> >> >> >> >>>> >>>> >> >> >> >>>> To complete the explanation, when >>>> >> >> >> >>>> addmapping [email protected] [email protected] >>>> >> >> >> >>>> is done, I even don't receive any mail at all on the >>>> >> >> >> [email protected]. >>>> >> >> >> >>>> >>>> >> >> >> >>>> When I remove the mapping, I receive again the mails on >>>> >> >> >> >>>> [email protected]. >>>> >> >> >> >>>> >>>> >> >> >> >>>> Tks, >>>> >> >> >> >>>> >>>> >> >> >> >>>> Eric >>>> >> >> >> >>>> >>>> >> >> >> >>>> On 04/20/2010 10:04 PM, Norman Maurer wrote: >>>> >> >> >> >>>>> >>>> >> >> >> >>>>> Cool ; we love contributions. About the mapping problem.... >>>> >> >> >> >>>>> Are >>>> >> >> you >>>> >> >> >> >>>>> sure you have the VirtualUserTable mailet defined in he >>>> >> >> >> >>>>> spoolmanager.xml ? >>>> >> >> >> >>>>> >>>> >> >> >> >>>>> Bye >>>> >> >> >> >>>>> Norman >>>> >> >> >> >>>>> >>>> >> >> >> >>>>> 2010/4/20, Eric Charles<[email protected]>: >>>> >> >> >> >>>>> >>>> >> >> >> >>>>>> Hi Norman, >>>> >> >> >> >>>>>> >>>> >> >> >> >>>>>> I will try to resolve JAMES-990 for the exception at >>>> startup. >>>> >> >> >> >>>>>> >>>> >> >> >> >>>>>> For the mapping, suppose [email protected] exists. Via >>>> >> >> >> remotemanager: >>>> >> >> >> >>>>>> addmapping [email protected] [email protected] >>>> >> >> >> >>>>>> >>>> >> >> >> >>>>>> Send a mail to [email protected] >>>> >> >> >> >>>>>> See in the log [email protected] and [email protected]: >>>> >> >> >> >>>>>> INFO 20:18:57,537 | james.smtpserver | Successfully >>>> spooled >>>> >> mail >>>> >> >> >> >>>>>> Mail1271787537534-29795 from [email protected] on >>>> >> 195.238.6.53 >>>> >> >> for >>>> >> >> >> >>>>>> [[email protected]] >>>> >> >> >> >>>>>> >>>> >> >> >> >>>>>> Succesfully spooled, but not seen via imap/pop3. >>>> >> >> >> >>>>>> >>>> >> >> >> >>>>>> Tks, >>>> >> >> >> >>>>>> >>>> >> >> >> >>>>>> Eric >>>> >> >> >> >>>>>> >>>> >> >> >> >>>>>> >>>> >> >> >> >>>>>> >>>> >> >> >> >>>>>> On 04/07/2010 06:22 PM, Norman Maurer wrote: >>>> >> >> >> >>>>>> >>>> >> >> >> >>>>>>> Hi Eric, >>>> >> >> >> >>>>>>> >>>> >> >> >> >>>>>>> the error about not able to add domain should be fixed in >>>> >> >> current >>>> >> >> >> >>>>>>> trunk. If you still have the problem open an jira issue. >>>> >> >> >> >>>>>>> >>>> >> >> >> >>>>>>> What is the problem with the mappings? >>>> >> >> >> >>>>>>> Could you give me some details? >>>> >> >> >> >>>>>>> >>>> >> >> >> >>>>>>> Thx >>>> >> >> >> >>>>>>> Norman >>>> >> >> >> >>>>>>> >>>> >> >> >> >>>>>>> 2010/4/7, Eric Charles<[email protected]>: >>>> >> >> >> >>>>>>> >>>> >> >> >> >>>>>>> >>>> >> >> >> >>>>>>>> Hi Oleg, >>>> >> >> >> >>>>>>>> >>>> >> >> >> >>>>>>>> This is usually the steps I take to configure james (from >>>> >> >> trunk): >>>> >> >> >> >>>>>>>> - James.xml :<enableVirtualHosting> >>>> >> >> true</enableVirtualHosting> >>>> >> >> >> >>>>>>>> - spring-beans.xml : comment<bean id="domainlist" >>>> >> >> >> >>>>>>>> class="org.apache.james.domain.XMLDomainList" /> >>>> >> >> >> >>>>>>>> - spring-beans.xml : uncomment<bean id="domainlist" >>>> >> >> >> >>>>>>>> class="org.apache.james.vut.JDBCVirtualUserTable" /> >>>> >> >> >> >>>>>>>> - domainlists.xml : uncomment >>>> >> >> >> >>>>>>>> <repositoryPath>db://maildb/domain</repositoryPath> >>>> >> >> >> >>>>>>>> <sqlFile>file://conf/sqlResources.xml</sqlFile> >>>> >> >> >> >>>>>>>> >>>> >> >> >> >>>>>>>> This should allow james to work with an embedded derby to >>>> >> >> manage >>>> >> >> >> >>>>>>>> multiple domains. >>>> >> >> >> >>>>>>>> >>>> >> >> >> >>>>>>>> run.sh : >>>> >> >> >> >>>>>>>> - the first time, you will get a >>>> >> >> >> >>>>>>>> org.apache.commons.configuration.ConfigurationException: >>>> >> >> >> Configured >>>> >> >> >> >>>>>>>> defaultdomain could not get added to DomainList (not very >>>> >> >> welcome >>>> >> >> >> >>>>>>>> message...) >>>> >> >> >> >>>>>>>> - don't worry, run twice: it works. >>>> >> >> >> >>>>>>>> >>>> >> >> >> >>>>>>>> telnet localhost 4555 (root / root) >>>> >> >> >> >>>>>>>> adddomain test.com >>>> >> >> >> >>>>>>>> listdomains >>>> >> >> >> >>>>>>>> Domains: >>>> >> >> >> >>>>>>>> test.com >>>> >> >> >> >>>>>>>> localhost >>>> >> >> >> >>>>>>>> 127.0.1.1 >>>> >> >> >> >>>>>>>> 204.12.0.50 >>>> >> >> >> >>>>>>>> 127.0.1.1 >>>> >> >> >> >>>>>>>> adduser [email protected] badpwd >>>> >> >> >> >>>>>>>> User [email protected] added >>>> >> >> >> >>>>>>>> listusers >>>> >> >> >> >>>>>>>> Existing accounts 1 >>>> >> >> >> >>>>>>>> user: [email protected] >>>> >> >> >> >>>>>>>> >>>> >> >> >> >>>>>>>> >>>> >> >> >> >>>>>>>> I still have a small concern about mapping. >>>> >> >> >> >>>>>>>> forward and alias have been removed >>>> >> >> >> >>>>>>>> (http://markmail.org/message/4ihtdtqiggcu74cl). >>>> >> >> >> >>>>>>>> >>>> >> >> >> >>>>>>>> I tried to make the trick with the mapping function (say >>>> >> >> >> >>>>>>>> for >>>> >> >> >> example >>>> >> >> >> >>>>>>>> [email protected] is the same as [email protected] and the >>>> same >>>> >> as >>>> >> >> >> >>>>>>>> [email protected]), but I didn't succeed to make it work. >>>> >> >> >> >>>>>>>> >>>> >> >> >> >>>>>>>> Hope this help you. >>>> >> >> >> >>>>>>>> Tks, >>>> >> >> >> >>>>>>>> >>>> >> >> >> >>>>>>>> Eric >>>> >> >> >> >>>>>>>> >>>> >> >> >> >>>>>>>> >>>> >> >> >> >>>>>>>> On 01/-10/-28163 08:59 PM, wrote: >>>> >> >> >> >>>>>>>> >>>> >> >> >> >>>>>>>> >>>> >> >> >> >>>>>>>>> ok if you want virtualhosting use the JDBCDomainList or >>>> >> >> >> >>>>>>>>> XMLDomainList. >>>> >> >> >> >>>>>>>>> Then when you add a new user to the server you would >>>> >> connect >>>> >> >> via >>>> >> >> >> >>>>>>>>> telnet to remotemanager and use the FQUN (like >>>> >> >> >> [email protected]) >>>> >> >> >> >>>>>>>>> when adding a user. Be sure to first create the domain >>>> if >>>> >> you >>>> >> >> use >>>> >> >> >> >>>>>>>>> JDBCDomainList via remotemanager. If you use >>>> XMLDomainList >>>> >> you >>>> >> >> >> just >>>> >> >> >> >>>>>>>>> need to add the domain to the domainnames config. >>>> >> >> >> >>>>>>>>> >>>> >> >> >> >>>>>>>>> Both of these DomainList implementation works without >>>> >> problems >>>> >> >> in >>>> >> >> >> >>>>>>>>> conjunction with virtualhosting. So can you give me a >>>> hint >>>> >> >> >> "where" >>>> >> >> >> >>>>>>>>> it >>>> >> >> >> >>>>>>>>> says to disable virtual hosting ? Maybe its outdated >>>> info >>>> >> .. >>>> >> >> >> >>>>>>>>> >>>> >> >> >> >>>>>>>>> Thx, >>>> >> >> >> >>>>>>>>> Norman >>>> >> >> >> >>>>>>>>> >>>> >> >> >> >>>>>>>>> >>>> >> >> >> >>>>>>>> >>>> >> >> >> >>>>>>>> >>>> >> >> >> >>>> --------------------------------------------------------------------- >>>> >> >> >> >>>>>>>> To unsubscribe, e-mail: >>>> >> >> [email protected] >>>> >> >> >> >>>>>>>> For additional commands, e-mail: >>>> >> >> >> [email protected] >>>> >> >> >> >>>>>>>> >>>> >> >> >> >>>>>>>> >>>> >> >> >> >>>>>>>> >>>> >> >> >> >>>>>>>> >>>> >> >> >> >>>>>>> >>>> >> >> >> >>>> --------------------------------------------------------------------- >>>> >> >> >> >>>>>>> To unsubscribe, e-mail: >>>> >> >> [email protected] >>>> >> >> >> >>>>>>> For additional commands, e-mail: >>>> >> >> [email protected] >>>> >> >> >> >>>>>>> >>>> >> >> >> >>>>>>> >>>> >> >> >> >>>>>>> >>>> >> >> >> >>>>>>> >>>> >> >> >> >>>>>> >>>> >> >> >> >>>> --------------------------------------------------------------------- >>>> >> >> >> >>>>>> To unsubscribe, e-mail: >>>> >> [email protected] >>>> >> >> >> >>>>>> For additional commands, e-mail: >>>> >> >> [email protected] >>>> >> >> >> >>>>>> >>>> >> >> >> >>>>>> >>>> >> >> >> >>>>>> >>>> >> >> >> >>>>> >>>> >> >> --------------------------------------------------------------------- >>>> >> >> >> >>>>> To unsubscribe, e-mail: >>>> >> [email protected] >>>> >> >> >> >>>>> For additional commands, e-mail: >>>> >> >> [email protected] >>>> >> >> >> >>>>> >>>> >> >> >> >>>>> >>>> >> >> >> >>>> >>>> >> >> >> >>>> >>>> >> >> --------------------------------------------------------------------- >>>> >> >> >> >>>> To unsubscribe, e-mail: >>>> >> [email protected] >>>> >> >> >> >>>> For additional commands, e-mail: >>>> >> [email protected] >>>> >> >> >> >>>> >>>> >> >> >> >>>> >>>> >> >> >> >>> >>>> >> >> --------------------------------------------------------------------- >>>> >> >> >> >>> To unsubscribe, e-mail: >>>> [email protected] >>>> >> >> >> >>> For additional commands, e-mail: >>>> >> [email protected] >>>> >> >> >> >>> >>>> >> >> >> >> >>>> >> >> >> >> >>>> >> >> >> >> >>>> >> --------------------------------------------------------------------- >>>> >> >> >> >> To unsubscribe, e-mail: >>>> [email protected] >>>> >> >> >> >> For additional commands, e-mail: >>>> >> [email protected] >>>> >> >> >> >> >>>> >> >> >> > >>>> >> >> >> > >>>> >> >> >> > >>>> >> --------------------------------------------------------------------- >>>> >> >> >> > To unsubscribe, e-mail: >>>> [email protected] >>>> >> >> >> > For additional commands, e-mail: >>>> [email protected] >>>> >> >> >> > >>>> >> >> >> > >>>> >> >> >> >>>> >> >> >> >>>> --------------------------------------------------------------------- >>>> >> >> >> To unsubscribe, e-mail: [email protected] >>>> >> >> >> For additional commands, e-mail: >>>> [email protected] >>>> >> >> >> >>>> >> >> >> >>>> >> >> > >>>> >> >> >>>> >> >> --------------------------------------------------------------------- >>>> >> >> To unsubscribe, e-mail: [email protected] >>>> >> >> For additional commands, e-mail: [email protected] >>>> >> >> >>>> >> >> >>>> >> > >>>> >> >>>> >> --------------------------------------------------------------------- >>>> >> To unsubscribe, e-mail: [email protected] >>>> >> For additional commands, e-mail: [email protected] >>>> >> >>>> >> >>>> > >>>> >>>> --------------------------------------------------------------------- >>>> To unsubscribe, e-mail: [email protected] >>>> For additional commands, e-mail: [email protected] >>>> >>>> >>> >> > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
