Hi there,
I am needing the session in my Java mail class where I send the message. The problem is that this Session is not from jcrx … how can I get the session without the context compatible with the mail job?
How to get the session for mail flow in Java
Hi there,
I am needing the session in my Java mail class where I send the message. The problem is that this Session is not from jcrx … how can I get the session without the context compatible with the mail job?
thanks a lot
Hi,
A javax.mail.Session would typically be retrieved from JNDI and config in context.xml
If you have this in context.xml:
<Resource name="mail/Session"
auth="Container"
type="javax.mail.Session"
mail.smtp.host="your.smtp.host (e.g. localhost)"/>
then you’d have something like this in code:
InitialContext initialContext = new javax.naming.InitialContext();
Context context = (Context) initialContext.lookup("java:comp/env");
Session session = (Session) context.lookup("mail/Session");
HTH
Jeroen
Hello,
I have problems with the Cast,
Job DEFAULT.76f12458-e743-4ff0-8200-252d89231803 threw an unhandle
d Exception:
[INFO] [talledLocalContainer] java.lang.ClassCastException: javax.mail.Session cannot be cast to javax.jcr.Session
thnaks !
Yes of course, you’re mixing up javax.jcr.Session and javax.mail.Session!
You need to cast to same type you’ve set up in context.xml, i.e. the javax.mail one.
Jeroen
Hello jeroen, thanks for your answer.
He managed to implement the code, he sent the json payload to another server and when he tries to save on the destination server I get the following exception:
Caused by: org.onehippo.forge.content.exim.core.DocumentManagerException: Failed to add a document with ‘pruebita.1’ under ‘/content/documents/santander/santander-developer/en_gb/content/producercontainers/common-apis/apicontainers’.'. javax.jcr.RepositoryException: Unable to update item: item.save()
at org.onehippo.forge.content.exim.core.impl.WorkflowDocumentManagerImpl.createDocument(WorkflowDocumentManagerImpl.java:429) ~[content-exim-core-4.0.0.jar:?]
at org.onehippo.forge.content.exim.core.impl.WorkflowDocumentVariantImportTask.createDocument(WorkflowDocumentVariantImportTask.java:153) ~[content-exim-core-4.0.0.jar:?]
at org.onehippo.forge.content.exim.core.impl.WorkflowDocumentVariantImportTask.createOrUpdateDocumentFromVariantContentNode(WorkflowDocumentVariantImportTask.java:86) ~[content-exim-core-4.0.0.jar:?]
… 70 more
Caused by: javax.jcr.RepositoryException: Unable to update item: item.save()
at org.apache.jackrabbit.core.ItemSaveOperation.perform(ItemSaveOperation.java:265) ~[?:?]
at org.apache.jackrabbit.core.session.SessionState.perform(SessionState.java:216) ~[?:?]
at org.apache.jackrabbit.core.ItemImpl.perform(ItemImpl.java:91) ~[?:?]
at org.apache.jackrabbit.core.ItemImpl.save(ItemImpl.java:329) ~[?:?]
at org.apache.jackrabbit.core.session.SessionSaveOperation.perform(SessionSaveOperation.java:65) ~[?:?]
at org.apache.jackrabbit.core.session.SessionState.perform(SessionState.java:216) ~[?:?]
at org.apache.jackrabbit.core.SessionImpl.perform(SessionImpl.java:367) ~[?:?]
at org.apache.jackrabbit.core.SessionImpl.save(SessionImpl.java:856) ~[?:?]
at org.hippoecm.repository.impl.SessionDecorator.save(SessionDecorator.java:279) ~[?:?]
at org.hippoecm.repository.standardworkflow.FolderWorkflowImpl.add(FolderWorkflowImpl.java:441) ~[?:?]
at org.hippoecm.repository.standardworkflow.FolderWorkflowImpl.add(FolderWorkflowImpl.java:358) ~[?:?]
at org.hippoecm.repository.standardworkflow.FolderWorkflowImpl.add(FolderWorkflowImpl.java:351) ~[?:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_282]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_282]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_282]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_282]
at org.hippoecm.repository.impl.WorkflowManagerImpl$WorkflowInvocationHandler.invoke(WorkflowManagerImpl.java:382) ~[?:?]
at com.sun.proxy.$Proxy191.add(Unknown Source) ~[?:?]
at org.onehippo.forge.content.exim.core.impl.WorkflowDocumentManagerImpl.createDocument(WorkflowDocumentManagerImpl.java:418) ~[content-exim-core-4.0.0.jar:?]
at org.onehippo.forge.content.exim.core.impl.WorkflowDocumentVariantImportTask.createDocument(WorkflowDocumentVariantImportTask.java:153) ~[content-exim-core-4.0.0.jar:?]
at org.onehippo.forge.content.exim.core.impl.WorkflowDocumentVariantImportTask.createOrUpdateDocumentFromVariantContentNode(WorkflowDocumentVariantImportTask.java:86) ~[content-exim-core-4.0.0.jar:?]