Exactly.. sounds like you are using spring 2.5.x.. We need spring 3.x. See: http://forum.springsource.org/showthread.php?t=72103
Bye, Norman 2011/1/29 Eric Charles <e...@apache.org>: > Hi, > Sounds also like a dependency version issue. > James needs Spring 3.0. Maybe you have spring 2.x jars somewhere on the > classpath? > Tks, > > Eric > > > On 28/01/2011 17:06, Luc Saulière wrote: >> >> Thx, I suspected that, I found a persistence.jar in the default lib dir of >> my web app project and I delete it, no more persistence schema issue. >> But the second exception is still present and seems to be unresolvable... >> >> Cause : Server error >> org.springframework.beans.factory.BeanCreationException >> : Error creating bean with name 'entityManagerFactory' defined in class >> path >> resource [Context.xml]: Invocation of init method failed; nested exception >> is java.lang.AbstractMethodError: >> >> org.springframework.orm.jpa.persistenceunit.SpringPersistenceUnitInfo.getValidationMode()Ljavax/persistence/ValidationMode; >> null >> >> Isn't it a problem of versioning conflict? >> Could I rewrite the method somewhere? >> >> 2011/1/28 Norman Maurer<nor...@apache.org> >> >>> Hi, >>> >>> because of this: >>> >>>> Caused by: org.xml.sax.SAXParseException: cvc-complex-type.3.1: Value >>> >>> '2.0' >>>> >>>> of attribute 'version' of element 'persistence' is not valid with >>>> respect >>> >>> to >>>> >>>> the corresponding attribute use. Attribute 'version' has a fixed value >>>> of >>>> '1.0'. >>>> at >>> >>> Maybe this helps: >>> >>> http://forum.springsource.org/showthread.php?t=89055 >>> https://jira.springsource.org/browse/SPR-6711 >>> >>> In general be sure its no pulled in via a transist dependency. >>> >>> Bye, >>> Norman >>> >>> >>> 2011/1/28 Luc Saulière<luc.sauli...@gmail.com>: >>>> >>>> Hello, >>>> How do you know that my compiler uses jpa 1.x? >>>> Because the only jpa library in my WebContent/WEB-INF/lib is the >>>> 2.0.1... >>>> >>>> thx. >>>> >>>> 2011/1/28 Norman Maurer<nor...@apache.org> >>>> >>>>> Hi there, >>>>> >>>>> from the trace it seems like you have a jpa 1.x provider on the >>>>> classpath. James use jpa 2.x, so you need to remove the 1.x one.. >>>>> >>>>> Hope it helps, >>>>> Norman >>>>> >>>>> 2011/1/28 Luc Saulière<luc.sauli...@gmail.com>: >>>>>> >>>>>> Of course, I give you some details if you are interested. >>>>>> >>>>>> The stand alone app needs only 6 beans : >>>>>> mailboxManager which needs authenticator and sessionMapperFactory >>> >>> which >>>>>> >>>>>> needs entityManagerFactory which needs datasource and vendorAdapter. >>>>>> which are loaded with ApplicationContext constructor...(and I get them >>> >>> by >>>>>> >>>>>> context.getbean method) >>>>>> >>>>>> My web app is a BaseDS app, which loads beans with a >>>>> >>>>> dispatcherServlet.xml >>>>>> >>>>>> file, and then injects them with annotation (like @Resource or >>>>> >>>>> @Autowired). >>>>>> >>>>>> As I load the authenticator bean, the builder throw an exception >>> >>> asking >>>>> >>>>> for >>>>>> >>>>>> a localusersrepository bean and then another bean... >>>>>> I then make my own simple authenticator which does not need a >>> >>> usersRepos >>>>>> >>>>>> (this Auth is always answering yes:). But I don't understand why in my >>>>>> standalone app I don't need this... >>>>>> >>>>>> Second issue, and much bigger, once my authenticator, datasource, >>>>>> vendorAdapter instanced, the entityManagerFactory throw me some >>>>> >>>>> persistence >>>>>> >>>>>> issues... >>>>>> First I am told that the xml schema of META-INF/persistence.xml (that >>>>> >>>>> I've >>>>>> >>>>>> imported in my web-app project) is not correct. And I got this first >>>>> >>>>> stack >>>>>> >>>>>> trace, which means, I think, "you have to use version 1.0 of >>> >>> persistence" >>>>>> >>>>>> after that I change the version to 1.0 in persistence.xml and I got a >>>>> >>>>> second >>>>>> >>>>>> trace about a ValidationMode method. >>>>>> The first trace : >>>>>> org.springframework.beans.factory.BeanCreationException: Error >>> >>> creating >>>>> >>>>> bean >>>>>> >>>>>> with name 'entityManagerFactory' defined in ServletContext resource >>>>>> [/WEB-INF/dispatcherServlet-servlet.xml]: Invocation of init method >>>>> >>>>> failed; >>>>>> >>>>>> nested exception is java.lang.IllegalArgumentException: Invalid XML in >>>>>> persistence unit from URL >>>>>> >>> >>> [file:/C:/WSRFLX/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/kiengiRecup-server/WEB-INF/classes/META-INF/persistence.xml] >>>>>> >>>>>> I skip the trace which are not useful I think... and then, the XML >>>>> >>>>> traces... >>>>>> >>>>>> Caused by: java.lang.IllegalArgumentException: Invalid XML in >>> >>> persistence >>>>>> >>>>>> unit from URL >>>>>> >>> >>> [file:/C:/WSRFLX/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/kiengiRecup-server/WEB-INF/classes/META-INF/persistence.xml] >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.orm.jpa.persistenceunit.PersistenceUnitReader.readPersistenceUnitInfos(PersistenceUnitReader.java:150) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.orm.jpa.persistenceunit.DefaultPersistenceUnitManager.readPersistenceUnitInfos(DefaultPersistenceUnitManager.java:303) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.orm.jpa.persistenceunit.DefaultPersistenceUnitManager.preparePersistenceUnitInfos(DefaultPersistenceUnitManager.java:275) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.orm.jpa.persistenceunit.DefaultPersistenceUnitManager.afterPropertiesSet(DefaultPersistenceUnitManager.java:260) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:192) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:288) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1460) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1398) >>>>>> >>>>>> ... 32 more >>>>>> Caused by: org.xml.sax.SAXParseException: cvc-complex-type.3.1: Value >>>>> >>>>> '2.0' >>>>>> >>>>>> of attribute 'version' of element 'persistence' is not valid with >>> >>> respect >>>>> >>>>> to >>>>>> >>>>>> the corresponding attribute use. Attribute 'version' has a fixed value >>> >>> of >>>>>> >>>>>> '1.0'. >>>>>> at >>>>>> >>> >>> com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) >>>>>> >>>>>> at >>>>>> >>> >>> com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:131) >>>>>> >>>>>> at >>>>>> >>> >>> com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:384) >>>>>> >>>>>> at >>>>>> >>> >>> com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:318) >>>>>> >>>>>> at >>>>>> >>> >>> com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator$XSIErrorReporter.reportError(XMLSchemaValidator.java:417) >>>>>> >>>>>> at >>>>>> >>> >>> com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.reportSchemaError(XMLSchemaValidator.java:3181) >>>>>> >>>>>> at >>>>>> >>> >>> com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.processOneAttribute(XMLSchemaValidator.java:2801) >>>>>> >>>>>> at >>>>>> >>> >>> com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.processAttributes(XMLSchemaValidator.java:2713) >>>>>> >>>>>> at >>>>>> >>> >>> com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.handleStartElement(XMLSchemaValidator.java:2065) >>>>>> >>>>>> at >>>>>> >>> >>> com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.startElement(XMLSchemaValidator.java:705) >>>>>> >>>>>> at >>>>>> >>> >>> com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) >>>>>> >>>>>> at >>>>>> >>> >>> com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) >>>>>> >>>>>> at >>>>>> >>> >>> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3103) >>>>>> >>>>>> at >>>>>> >>> >>> com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:922) >>>>>> >>>>>> at >>>>>> >>> >>> com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648) >>>>>> >>>>>> at >>>>>> >>> >>> com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) >>>>>> >>>>>> at >>>>>> >>> >>> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:511) >>>>>> >>>>>> at >>>>>> >>> >>> com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:808) >>>>>> >>>>>> at >>>>>> >>> >>> com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) >>>>>> >>>>>> at >>>>>> >>> >>> com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:119) >>>>>> >>>>>> at >>>>>> >>> >>> com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:235) >>>>>> >>>>>> at >>>>>> >>> >>> com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:284) >>>>>> >>>>>> at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:124) >>>>>> at >>>>>> >>> >>> org.springframework.orm.jpa.persistenceunit.PersistenceUnitReader.validateResource(PersistenceUnitReader.java:186) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.orm.jpa.persistenceunit.PersistenceUnitReader.readPersistenceUnitInfos(PersistenceUnitReader.java:137) >>>>>> >>>>>> ... 39 more >>>>>> >>>>>> The second trace : >>>>>> org.springframework.beans.factory.BeanCreationException: Error >>> >>> creating >>>>> >>>>> bean >>>>>> >>>>>> with name 'entityManagerFactory' defined in ServletContext resource >>>>>> [/WEB-INF/dispatcherServlet-servlet.xml]: Invocation of init method >>>>> >>>>> failed; >>>>>> >>>>>> nested exception is java.lang.AbstractMethodError: >>>>>> >>> >>> org.springframework.orm.jpa.persistenceunit.SpringPersistenceUnitInfo.getValidationMode()Ljavax/persistence/ValidationMode; >>>>>> >>>>>> I skip the trace which are not useful I think... and then, the >>>>> >>>>> persistence >>>>>> >>>>>> traces... >>>>>> >>>>>> Caused by: java.lang.AbstractMethodError: >>>>>> >>> >>> org.springframework.orm.jpa.persistenceunit.SpringPersistenceUnitInfo.getValidationMode()Ljavax/persistence/ValidationMode; >>>>>> >>>>>> at >>>>>> >>> >>> org.apache.openjpa.persistence.PersistenceUnitInfoImpl.toOpenJPAProperties(PersistenceUnitInfoImpl.java:457) >>>>>> >>>>>> at >>>>>> >>> >>> org.apache.openjpa.persistence.PersistenceProductDerivation.load(PersistenceProductDerivation.java:314) >>>>>> >>>>>> at >>>>>> >>> >>> org.apache.openjpa.persistence.PersistenceProviderImpl.createContainerEntityManagerFactory(PersistenceProviderImpl.java:161) >>>>>> >>>>>> at >>>>>> >>> >>> org.apache.openjpa.persistence.PersistenceProviderImpl.createContainerEntityManagerFactory(PersistenceProviderImpl.java:65) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:225) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:288) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1460) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1398) >>>>>> >>>>>> ... 32 more >>>>>> 28 janv. 2011 12:30:24 org.apache.catalina.core.StandardContext >>>>>> loadOnStartup >>>>>> GRAVE: La servlet a généré une exception "load()" >>>>>> java.lang.AbstractMethodError: >>>>>> >>> >>> org.springframework.orm.jpa.persistenceunit.SpringPersistenceUnitInfo.getValidationMode()Ljavax/persistence/ValidationMode; >>>>>> >>>>>> at >>>>>> >>> >>> org.apache.openjpa.persistence.PersistenceUnitInfoImpl.toOpenJPAProperties(PersistenceUnitInfoImpl.java:457) >>>>>> >>>>>> at >>>>>> >>> >>> org.apache.openjpa.persistence.PersistenceProductDerivation.load(PersistenceProductDerivation.java:314) >>>>>> >>>>>> at >>>>>> >>> >>> org.apache.openjpa.persistence.PersistenceProviderImpl.createContainerEntityManagerFactory(PersistenceProviderImpl.java:161) >>>>>> >>>>>> at >>>>>> >>> >>> org.apache.openjpa.persistence.PersistenceProviderImpl.createContainerEntityManagerFactory(PersistenceProviderImpl.java:65) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:225) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:288) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1460) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1398) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:512) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:450) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:290) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:287) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:189) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:540) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:842) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:416) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:443) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:459) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:340) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:307) >>>>>> >>>>>> at >>>>>> >>> >>> org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:127) >>>>>> >>>>>> at javax.servlet.GenericServlet.init(GenericServlet.java:212) >>>>>> at >>>>>> >>> >>> org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1173) >>>>>> >>>>>> at >>>>> >>>>> org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:993) >>>>>> >>>>>> at >>>>>> >>> >>> org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4387) >>>>>> >>>>>> at >>> >>> org.apache.catalina.core.StandardContext.start(StandardContext.java:4700) >>>>>> >>>>>> at >>> >>> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) >>>>>> >>>>>> at org.apache.catalina.core.StandardHost.start(StandardHost.java:785) >>>>>> at >>> >>> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) >>>>>> >>>>>> at >>> >>> org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463) >>>>>> >>>>>> at >>>>> >>>>> >>>>> org.apache.catalina.core.StandardService.start(StandardService.java:525) >>>>>> >>>>>> at >>> >>> org.apache.catalina.core.StandardServer.start(StandardServer.java:701) >>>>>> >>>>>> at org.apache.catalina.startup.Catalina.start(Catalina.java:585) >>>>>> 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.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289) >>>>>> at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414) >>>>>> >>>>>> Thx. >>>>>> >>>>>> 2011/1/28 Norman Maurer<nor...@apache.org> >>>>>> >>>>>>> Could you give use some more details ? Like the stacktrace etc. >>>>>>> >>>>>>> Bye, >>>>>>> Norman >>>>>>> >>>>>>> >>>>>>> 2011/1/28 Luc Saulière<luc.sauli...@gmail.com>: >>>>>>>> >>>>>>>> Hi James Dev Team, >>>>>>>> Another question on this topic, in facts another step in my James >>>>> >>>>> based >>>>>>> >>>>>>> app >>>>>>>> >>>>>>>> devlopment. >>>>>>>> The mail storage in James DB (via jdbc mysql connector) works fine >>> >>> in >>>>>>> >>>>>>> stand >>>>>>>> >>>>>>>> alone with only 6 beans (7 with the PlaceHolderConfigurer). >>>>>>>> My issue takes place in a JavaEE/Spring app, when I tried to load >>> >>> my >>>>>>> >>>>>>> reduced >>>>>>>> >>>>>>>> James spring context, the build behaviour is not the same as in >>> >>> stand >>>>>>> >>>>>>> alone >>>>>>>> >>>>>>>> and it ask me much more beans for, actually trigger a class >>>>> >>>>> constructor >>>>>>>> >>>>>>>> exception. >>>>>>>> Anyone has a clue about James based webapp dev? >>>>>>>> >>>>>>>> Thx, >>>>>>>> Luc. >>>>>>>> >>>>>>>> 2011/1/24 Eric Charles<e...@apache.org> >>>>>>>> >>>>>>>>> Hi Luc, >>>>>>>>> >>>>>>>>> Try to add in log4j.properties >>>>>>>>> log4j.logger.com.kiengi.recup=INFO, CONS, FILE >>>>>>>>> >>>>>>>>> Tks, >>>>>>>>> >>>>>>>>> Eric >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> On 24/01/2011 17:05, Luc Saulière wrote: >>>>>>>>> >>>>>>>>>> Hello, >>>>>>>>>> >>>>>>>>>> Now I load my java app, as a James side module, I would like to >>> >>> log >>>>>>> >>>>>>> some >>>>>>>>>> >>>>>>>>>> informations for debug and information, like James : >>>>>>>>>> >>>>>>>>>> INFO 16:42:31,246 | >>>>>>>>>> org.apache.james.container.spring.JamesServerApplicationContext | >>>>>>>>>> Refreshing >>>>>>>>>> >>> org.apache.james.container.spring.JamesServerApplicationContext@27e59128 >>>>> >>>>> : >>>>>>>>>> >>>>>>>>>> startup date [Mon Jan 24 16:42:31 CET 2011]; root of context >>>>> >>>>> hierarchy >>>>>>>>>> >>>>>>>>>> INFO 16:42:31,859 | >>>>>>>>>> org.apache.james.container.spring.JamesServerApplicationContext | >>>>>>> >>>>>>> Closing >>> >>> org.apache.james.container.spring.JamesServerApplicationContext@27e59128 >>>>> >>>>> : >>>>>>>>>> >>>>>>>>>> startup date [Mon Jan 24 16:42:31 CET 2011]; root of context >>>>> >>>>> hierarchy >>>>>>>>>> >>>>>>>>>> I tried to make a log : >>>>>>>>>> >>>>>>>>>> Log log = LogFactory.getLog(Main.class.getName()); >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> But I got : >>>>>>>>>> >>>>>>>>>> log4j:WARN No appenders could be found for logger >>>>>>>>>> (com.kiengi.recup.POP.Main). >>>>>>>>>> >>>>>>>>>> log4j:WARN Please initialize the log4j system properly. >>>>>>>>>> >>>>>>>>>> So the only solution I have is : >>>>>>>>>> >>>>>>>>>> System.out.println("String to write to the console..."); >>>>>>>>>> >>>>>>>>>> Which is a little bit archaic... >>>>>>>>>> >>>>>>>>>> So do you have any clue about how to log properly to the Java (or >>>>>>> >>>>>>> Eclipse) >>>>>>>>>> >>>>>>>>>> console? >>>>>>>>>> >>>>>>>>>> Thx >>>>>>>>>> Luc. >>>>>>>>>> >>>>>>>>>> 2011/1/21 Norman Maurer<nor...@apache.org> >>>>>>>>>> >>>>>>>>>> So you want to store a MimeMessage instance in the Mailbox ? >>>>>>>>>>> >>>>>>>>>>> You could use the MimeMessageInputStream class for this: >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>> >>> http://svn.apache.org/viewvc/james/server/trunk/core/src/main/java/org/apache/james/core/MimeMessageInputStream.java?view=markup >>>>>>>>>>> >>>>>>>>>>> Bye, >>>>>>>>>>> Norman >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> 2011/1/21 Luc Saulière<luc.sauli...@gmail.com>: >>>>>>>>>>> >>>>>>>>>>>> It worked, that was a weird eclipse behaviour... >>>>>>>>>>>> You are very helpful, may I bother you one more time? maybe the >>>>>>> >>>>>>> last... >>>>>>>>>>>> >>>>>>>>>>>> maybe not :) >>>>>>>>>>>> >>>>>>>>>>>> Now I can easily store my messages in the db, ok, but the >>> >>> source >>>>> >>>>> of >>>>>>> >>>>>>> my >>>>>>>>>>>> >>>>>>>>>>>> messages is an inputStream. >>>>>>>>>>>> I don't know how to make an Inputstream from a mail message (as >>>>>>>>>>>> >>>>>>>>>>> javax.Mail, >>>>>>>>>>> >>>>>>>>>>>> MimeMessage or Message...) cause each try I made gave me a "bad >>>>>>> >>>>>>> header >>>>>>>>>>>> >>>>>>>>>>>> message...". >>>>>>>>>>>> I see in James code the MessageResultImpl class which looks >>> >>> like a >>>>>>>>>>> >>>>>>>>>>> Message >>>>>>>>>>> >>>>>>>>>>>> def but with Content type instead of MimeMessage... >>>>>>>>>>>> I will try to parse every ppty of the message and make a new >>>>>>>>>>>> >>>>>>>>>>> MessageResult >>>>>>>>>>> >>>>>>>>>>>> and find a way to extract the damned InputStream I need... >>>>>>>>>>>> >>>>>>>>>>>> Thx >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> 2011/1/21 Norman Maurer<nor...@apache.org> >>>>>>>>>>>> >>>>>>>>>>>> Maybe some nice classpath problem with eclipse or something >>> >>> like >>>>>>>>>>>>> >>>>>>>>>>>>> that.. maybe just rename your beans config to something else >>> >>> and >>>>> >>>>> use >>>>>>>>>>>>> >>>>>>>>>>>>> it in the Main class. Just to be sure it not use the wrong >>> >>> one.. >>>>>>>>>>>>> >>>>>>>>>>>>> Bye, >>>>>>>>>>>>> Norman >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> 2011/1/21 Luc Saulière<luc.sauli...@gmail.com>: >>>>>>>>>>>>> >>>>>>>>>>>>>> Thx, it works perfectly with only only 7 beans. >>>>>>>>>>>>>> Just one weird thing, in my J3M2 project which worked >>> >>> perfectly >>>>>>>>>>>>> >>>>>>>>>>>>> yesterday, I >>>>>>>>>>>>> >>>>>>>>>>>>>> have now a XmlBeanDefinitionStoreException, which specify the >>>>>>>>>>>>>> spring-beans.xml line number 1770!!?! >>>>>>>>>>>>>> weird, isn't it? >>>>>>>>>>>>>> >>>>>>>>>>>>>> 2011/1/20 Norman Maurer<nor...@apache.org> >>>>>>>>>>>>>> >>>>>>>>>>>>>> Hi there, >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> exactly. In fact you will prolly only need to instance the >>>>> >>>>> needed >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> MailboxManager/SubscriptionManager/Authenticator >>> >>> implementation >>>>>>> >>>>>>> you >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> want to use in your code or just wire these implementations >>> >>> via >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> spring. Everything else should not be needed. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Bye, >>>>>>>>>>>>>>> Norman >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> 2011/1/20 Luc Saulière<luc.sauli...@gmail.com>: >>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Ok it works, I didnt know how to inject beans in my main >>>>> >>>>> class... >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> It loads all the james app before sending one mail to the >>> >>> bdd, >>>>>>> >>>>>>> but >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> it >>>>>>>>>>>> >>>>>>>>>>>> works >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> :) In fact I hacked all the spring-bean.xml (from J3M2) >>>>> >>>>> without >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> deleting >>>>>>>>>>>>>> >>>>>>>>>>>>>> any >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> bean... I just have to select those I need. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Thanks for your help, >>>>>>>>>>>>>>>> Luc >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> 2011/1/20 Eric Charles<e...@apache.org> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Hi, >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Yes, direct injection does not work in main class because >>> >>> it >>>>> >>>>> is >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> not >>>>>>>>>>>> >>>>>>>>>>>> fetched >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> from spring context. >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> 1. you can create a bean and move the @Resource within, >>>>> >>>>> define >>>>>>> >>>>>>> the >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> bean >>>>>>>>>>>>>> >>>>>>>>>>>>>> in >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> spring xml context, spring should inject the mailboxmanager >>> >>> in >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> your >>>>>>>>>>>> >>>>>>>>>>>> bean. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> You can get your bean with context.getBean("mybean") in >>> >>> main >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> class. >>>>>>>>>>>> >>>>>>>>>>>> 2. or simply call from the main class >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> context.getBean("mailboxmanager"), >>>>>>>>>>>>>> >>>>>>>>>>>>>> it >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> should give you the mailboxmanager,... but it seems you had >>> >>> an >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> exception >>>>>>>>>>>>>> >>>>>>>>>>>>>> (if >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> such, could you provide the stack trace ?). >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Tks, >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Eric >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> On 20/01/2011 15:42, Luc Saulière wrote: >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Hello Eric, >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> That was quite the code I tested yesterday, but I got >>> >>> still >>>>> >>>>> the >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> same >>>>>>>>>>>> >>>>>>>>>>>> exception, because the MailboxManager is not initialized (null >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> pointer >>>>>>>>>>>>>> >>>>>>>>>>>>>> exception). >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> I tried the @Resource annotation, I got 'null pointer' >>> >>> and I >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> tried >>>>>>>>>>>> >>>>>>>>>>>> the >>>>>>>>>>>>>> >>>>>>>>>>>>>> BeanFactory way but I got a 'bean creation exception'... >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> I think the first method is the good one, but I'm still >>>>> >>>>> looking >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> after >>>>>>>>>>>>>> >>>>>>>>>>>>>> the >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> magic method to instantiate my MailboxManager. >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> Thx, >>>>>>>>>>>>>>>>>> Luc. >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> 2011/1/20 Eric Charles<e...@apache.org> >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> Hi, >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> Probably you did not instantiate spring context. >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> As first shot, you could copy Main to YourMain >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> >>> >>> https://svn.apache.org/repos/asf/james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/Main.java >>>>>>>>>>>> >>>>>>>>>>>> and hack it with for example with code sample in [1]. >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> You can also hack the spring context xml files if you >>> >>> don't >>>>>>> >>>>>>> want >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> to >>>>>>>>>>>> >>>>>>>>>>>> load >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> all the beans, but you will still need a few of them to >>> >>> access >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> the >>>>>>>>>>>> >>>>>>>>>>>> mailbox. >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> Obviously, we could discuss the following: >>>>>>>>>>>>>>>>>>> 1. Add some code simple samples for basic operations on >>>>>>> >>>>>>> mailbox. >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> 2. Have a spring context for mailbox that could be used >>> >>> as >>>>> >>>>> a >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> stand-alone >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> (and also be imported in server). >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> Tks, >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> Eric >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> [1] code sample (non compiling). >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> public class YourMain { >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> private static Log log = >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> LogFactory.getLog(Main.class.getName()); >>>>>>>>>>>>>> >>>>>>>>>>>>>> @Ressource(name="mailboxmanager") >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> private static MailboxManager; >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> public static void main(String[] args) throws >>>>> >>>>> IOException { >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> final JamesServerApplicationContext context = new >>>>>>>>>>>>>>>>>>> JamesServerApplicationContext(new String[] { >>>>>>>>>>>>>>>>>>> "context/james-server-context.xml" }); >>>>>>>>>>>>>>>>>>> context.registerShutdownHook(); >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> // Bad code practice - Refactor it!!! >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> MailboxPath mailboxPath = >>>>>>> >>>>>>> MailboxPath.inbox("userName"); >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> MailboxSession mailboxSession = >>>>>>>>>>>>>>>>>>> mailboxManager.createSystemSession(userName30, log) >>>>>>>>>>>>>>>>>>> >>>>> mailboxManager.startProcessingRequest(mailboxSession); >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> try { >>>>>>>>>>>>>>>>>>> mailboxManager.createMailbox(mailboxPath, >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> mailboxSession); >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> } >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> catch (MailboxExistsException e) { >>>>>>>>>>>>>>>>>>> // Do nothing, the mailbox already >>> >>> exists. >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> } >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> >>> mailboxManager.endProcessingRequest(mailboxSession); >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> MessageManager messageManager = >>>>>>>>>>>>>>>>>>> mailboxManager.getMailbox("mailboxPath", >>> >>> mailboxSession); >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> // instanciate an input stream that contains your >>>>> >>>>> email >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> content >>>>>>>>>>>>>> >>>>>>>>>>>>>> (body, header,...) >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> messageManager.appendMessage(your-input-stream, >>>>>>>>>>>>>>>>>>> new Date(), >>>>>>>>>>>>>>>>>>> mailboxSession, >>>>>>>>>>>>>>>>>>> isRecent, >>>>>>>>>>>>>>>>>>> flags); >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> mailboxManager.endProcessingRequest(mailboxSession); >>>>>>>>>>>> >>>>>>>>>>>> } >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> } >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> } >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> On 19/01/2011 20:07, Luc Saulière wrote: >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> Thx for answering so quickly, I tried this in a new >>>>> >>>>> package >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> inside >>>>>>>>>>>> >>>>>>>>>>>> james-server-container-spring project... >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> I have a public static void main(String[] args) >>> >>> containing >>>>> >>>>> my >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> private >>>>>>>>>>>>>> >>>>>>>>>>>>>> staticMailboxManager mailboxManager which >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> is injected with the annotation >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> @Resource(name="mailboxmanager") >>>>>>>>>>>> >>>>>>>>>>>> from >>>>>>>>>>>>>> >>>>>>>>>>>>>> the >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> spring-bean.xml. >>>>>>>>>>>>>>>>>>>> But it does not succeed in initializing the variable >>> >>> and I >>>>>>> >>>>>>> get >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> a >>>>>>>>>>>> >>>>>>>>>>>> NullPointerException as soon as I use it... >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> How can I initialize my beans without running the >>> >>> entire >>>>>>> >>>>>>> James >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> app? >>>>>>>>>>>>>> >>>>>>>>>>>>>> Tks. >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> 2011/1/19 Eric Charles<e...@apache.org> >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> Hi Luc, >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> Yes, code has changed in trunk since M2 (we don't use >>>>>>>>>>>>>>>>>>>> MailServer >>>>>>>>>>>> >>>>>>>>>>>> anymore). >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> In M2, or in trunk, the way to store mail is the same. >>>>>>>>>>>>>>>>>>>>> If you are deploying the your code/class in the james >>>>> >>>>> spring >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> container, >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> you >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> need to inject the mailboxmanager (with >>>>>>>>>>>>>>>>>>>>> @Resources(name="mailboxmanager") >>>>>>>>>>>>>>>>>>>>> and have a block of code such as: >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> MailboxPath mailboxPath = >>> >>> MailboxPath.inbox(userName30); >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> MailboxSession mailboxSession = >>>>>>>>>>>>>>>>>>>>> mailboxManager.createSystemSession(userName30, log) >>>>>>>>>>>>>>>>>>>>> MessageManager messageManager = >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> mailboxManager.getMailbox(mailboxPath, >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> mailboxSession); >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> messageManager.appendMessage(your-input-stream, >>>>>>>>>>>>>>>>>>>>> new Date(), >>>>>>>>>>>>>>>>>>>>> mailboxSession, >>>>>>>>>>>>>>>>>>>>> isRecent, >>>>>>>>>>>>>>>>>>>>> flags); >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> mailboxManager.endProcessingRequest(mailboxSession); >>>>>>>>>>>>>> >>>>>>>>>>>>>> } >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> I just realize I can't find a simple test case to in >>>>> >>>>> trunk >>>>>>> >>>>>>> to >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> show >>>>>>>>>>>>>> >>>>>>>>>>>>>> this >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> (or >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> maybe I didn't look good). >>>>>>>>>>>>>>>>>>>>> If we don't have this, maybe you could open a jira so >>> >>> we >>>>> >>>>> can >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> further >>>>>>>>>>>>>> >>>>>>>>>>>>>> provide test samples. >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> (this comes from the fact that all our tests were >>> >>> made >>>>> >>>>> from >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> an >>>>>>>>>>>> >>>>>>>>>>>> "imap >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> perspective", we moved the imap test to another project, >>> >>> but >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> we >>>>>>>>>>>> >>>>>>>>>>>> probably >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> should further enrich the pure mailbox test >>>>> >>>>> cases/samples). >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> Tks, >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> Eric >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> On 19/01/2011 18:04, Luc Sauličre wrote: >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> Hello, >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> I'm developing with Math on the same mail app. We >>> >>> didn't >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> succeed >>>>>>>>>>>> >>>>>>>>>>>> in >>>>>>>>>>>>>> >>>>>>>>>>>>>> storing >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> mail as james3 does. In fact the SieveMailet class >>> >>> does >>>>> >>>>> not >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> have >>>>>>>>>>>> >>>>>>>>>>>> a >>>>>>>>>>>>>> >>>>>>>>>>>>>> setUsersRepo method, I think you're dealing with a newer >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> version >>>>>>>>>>>> >>>>>>>>>>>> of >>>>>>>>>>>>>> >>>>>>>>>>>>>> James3... >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> We are developing with the M2 one and SieveMailet >>> >>> have a >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> setMailserver >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> method instead. >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> So, is there any way to store a mail (from another >>> >>> IMAP >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> connection >>>>>>>>>>>>>> >>>>>>>>>>>>>> for >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> instance) in the James3 mySQL db, as James3 does (i.e. >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> filling >>>>>>>>>>>> >>>>>>>>>>>> correctly >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> all >>>>>>>>>>>>>>>>>>>>>> the appropriate tables...)? >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> Thx for helping. >>>>>>>>>>>>>>>>>>>>>> Luc. >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> 2011/1/17 Eric Charles<e...@apache.org> >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> Hi, >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> The mails store magic occurs in LocalDelivery where >>> >>> the >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> MailboxManager >>>>>>>>>>>>>>>>>>>>>>> is >>>>>>>>>>>>>>>>>>>>>>> injected. >>>>>>>>>>>>>>>>>>>>>>> (more precise, LocalDelivery uses the SieveMailet >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> initialized >>>>>>>>>>>> >>>>>>>>>>>> with >>>>>>>>>>>>>> >>>>>>>>>>>>>> the >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> MailboxManager) >>>>>>>>>>>>>>>>>>>>>>> >>> sieveMailet.setUsersRepository(usersRepository); >>> sieveMailet.setMailboxManager(mailboxManager); >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> sieveMailet.init(m); >>>>>>>>>>>>>>>>>>>>>>> sieveMailet.setQuiet(true); >>>>>>>>>>>>>>>>>>>>>>> ... >>>>>>>>>>>>>>>>>>>>>>> if (mail.getState() != Mail.GHOST) { >>>>>>>>>>>>>>>>>>>>>>> sieveMailet.service(mail); >>>>>>>>>>>>>>>>>>>>>>> } >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> You only need to know that *MailRepository is not >>> >>> for >>>>>>> >>>>>>> users' >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> mail >>>>>>>>>>>>>> >>>>>>>>>>>>>> storage >>>>> >>>>> http://james.apache.org/server/3/feature-persistence.html >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> Both topics (mailet usage for delivery + separate >>> >>> mail >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> stores) >>>>>>>>>>>> >>>>>>>>>>>> are >>>>>>>>>>>>>> >>>>>>>>>>>>>> subject >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> to discussion will certainly change. >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> Tks, >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> Eric >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> On 17/01/2011 11:43, math math wrote: >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> Hello everybody, >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> I am developping a web mail project using james >>> >>> 3M2. >>>>> >>>>> I'm >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> trying >>>>>>>>>>>>>> >>>>>>>>>>>>>> to >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> store >>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>> mails in a "james3" way with an external >>> >>> application >>>>>>> >>>>>>> using >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> MySql >>>>>>>>>>>>>> >>>>>>>>>>>>>> DB. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> I've >>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>> tried to store mails using mysq database >>> >>> repositories >>>>> >>>>> for >>>>>>> >>>>>>> a >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> few >>>>>>>>>>>>>> >>>>>>>>>>>>>> days >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> now >>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>> but >>>>>>>>>>>>>>>>>>>>>>>> i didn't succeed to do so... I 've traced the store >>>>>>> >>>>>>> method >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> of >>>>>>>>>>>> >>>>>>>>>>>> JDBCMailRepository class and also the ToRepository one. But >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> still >>>>>>>>>>>>>> >>>>>>>>>>>>>> don't >>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>> know >>>>>>>>>>>>>>>>>>>>>>>> how James 3 is storing mails in the DB. >>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>> I would be very glad if someone could help me in >>> >>> this >>>>>>> >>>>>>> task. >>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>> Thanks, >>>>>>>>>>>>>>>>>>>>>>>> Mat >>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>> >>> --------------------------------------------------------------------- >>>>>>>>>>>> >>>>>>>>>>>> To unsubscribe, e-mail: >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> server-dev-unsubscr...@james.apache.org >>>>>>>>>>>>>> >>>>>>>>>>>>>> For additional commands, e-mail: >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> server-dev-h...@james.apache.org >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> >>> --------------------------------------------------------------------- >>>>>>>>>>>> >>>>>>>>>>>> To unsubscribe, e-mail: >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> server-dev-unsubscr...@james.apache.org >>>>>>>>>>>> >>>>>>>>>>>> For additional commands, e-mail: >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> server-dev-h...@james.apache.org >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> >>> --------------------------------------------------------------------- >>>>>>>>>>>> >>>>>>>>>>>> To unsubscribe, e-mail: >>> >>> server-dev-unsubscr...@james.apache.org >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> For additional commands, e-mail: >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> server-dev-h...@james.apache.org >>>>>>>>>>>>>>>>>>> >>>>>>> --------------------------------------------------------------------- >>>>>>>>>>>> >>>>>>>>>>>> To unsubscribe, e-mail: >>> >>> server-dev-unsubscr...@james.apache.org >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> For additional commands, e-mail: >>>>>>> >>>>>>> server-dev-h...@james.apache.org >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>> --------------------------------------------------------------------- >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> To unsubscribe, e-mail: >>>>> >>>>> server-dev-unsubscr...@james.apache.org >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> For additional commands, e-mail: >>>>> >>>>> server-dev-h...@james.apache.org >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>> --------------------------------------------------------------------- >>>>>>>>>>>>> >>>>>>>>>>>>> To unsubscribe, e-mail: >>> >>> server-dev-unsubscr...@james.apache.org >>>>>>>>>>>>> >>>>>>>>>>>>> For additional commands, e-mail: >>>>> >>>>> server-dev-h...@james.apache.org >>>>>>>>>>>>> >>>>>>>>>>>>> >>> --------------------------------------------------------------------- >>>>>>>>>>> >>>>>>>>>>> To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org >>>>>>>>>>> For additional commands, e-mail: >>> >>> server-dev-h...@james.apache.org >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>> >>> --------------------------------------------------------------------- >>>>>>>>> >>>>>>>>> To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org >>>>>>>>> For additional commands, e-mail: server-dev-h...@james.apache.org >>>>>>>>> >>>>>>>>> >>>>>>> --------------------------------------------------------------------- >>>>>>> To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org >>>>>>> For additional commands, e-mail: server-dev-h...@james.apache.org >>>>>>> >>>>>>> >>>>> --------------------------------------------------------------------- >>>>> To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org >>>>> For additional commands, e-mail: server-dev-h...@james.apache.org >>>>> >>>>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org >>> For additional commands, e-mail: server-dev-h...@james.apache.org >>> >>> > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org > For additional commands, e-mail: server-dev-h...@james.apache.org > > E --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org