Error in script of Connector Mail
Hi all,
I would send an email to all user of my company using a system task with a mail connector where in the To field I add a script that select all user and create a string with all email.
But this is the exception that I obtain.
java.lang.reflect.InvocationTargetException<br />
org.bonitasoft.engine.bpm.connector.ConnectorExecutionException:<br />
org.bonitasoft.engine.core.connector.exception.SConnectorException:<br />
org.bonitasoft.engine.expression.exception.SExpressionEvaluationException:<br />
Script throws an exceptionSExpressionImpl [<br />
name=getUserMail,<br />
content=<br />
<br />
import org.bonitasoft.engine.search.*;<br />
import org.bonitasoft.engine.identity.*;<br />
<br />
SearchOptionsBuilder so = new SearchOptionsBuilder(0, 100);<br />
SearchResult<User> userResult = apiAccessor.getIdentityAPI().searchUsers(so.done());
org.bonitasoft.engine.bpm.connector.ConnectorExecutionException:<br />
org.bonitasoft.engine.core.connector.exception.SConnectorException:<br />
org.bonitasoft.engine.expression.exception.SExpressionEvaluationException:<br />
Script throws an exceptionSExpressionImpl [<br />
name=getUserMail,<br />
content=<br />
<br />
import org.bonitasoft.engine.search.*;<br />
import org.bonitasoft.engine.identity.*;<br />
<br />
SearchOptionsBuilder so = new SearchOptionsBuilder(0, 100);<br />
SearchResult<User> userResult = apiAccessor.getIdentityAPI().searchUsers(so.done());
String mailto = new String();<br />
for (User u : userResult)<br />
{<br />
UserWithContactData proUser = apiAccessor.getIdentityAPI().getUserWithProfessionalDetails(u.getId());<br />
mailto += ", "+proUser.getContactDactivityInstanceIdata().getEmail();<br />
}<br />
<br />
return mailto;<br />
,<br />
returnType=java.lang.String,<br />
dependencies=[SExpressionImpl [ name=apiAccessor,<br />
content=apiAccessor,<br />
returnType=org.bonitasoft.engine.api.APIAccessor,<br />
dependencies=[],<br />
expressionKind=ExpressionKind [interpreter=NONE,<br />
type=TYPE_ENGINE_CONSTANT<br />
]<br />
]<br />
],<br />
expressionKind=ExpressionKind [interpreter=GROOVY,<br />
type=TYPE_READ_ONLY_SCRIPT<br />
]<br />
]
for (User u : userResult)<br />
{<br />
UserWithContactData proUser = apiAccessor.getIdentityAPI().getUserWithProfessionalDetails(u.getId());<br />
mailto += ", "+proUser.getContactDactivityInstanceIdata().getEmail();<br />
}<br />
<br />
return mailto;<br />
,<br />
returnType=java.lang.String,<br />
dependencies=[SExpressionImpl [ name=apiAccessor,<br />
content=apiAccessor,<br />
returnType=org.bonitasoft.engine.api.APIAccessor,<br />
dependencies=[],<br />
expressionKind=ExpressionKind [interpreter=NONE,<br />
type=TYPE_ENGINE_CONSTANT<br />
]<br />
]<br />
],<br />
expressionKind=ExpressionKind [interpreter=GROOVY,<br />
type=TYPE_READ_ONLY_SCRIPT<br />
]<br />
]
Thanks for attention,
Francesco
1 answer
hello Francy,
having a look in your code and I see a few mistakes:
in line num 5 in the second block of code: it says: mailto += ", "+proUser.getContactDactivityInstanceIdata().getEmail();
and should be:
mailto += ", "+proUser.getContactData().getEmail();
SearchResult
Try something like this:
SearchOptionsBuilder so = new SearchOptionsBuilder(0, 100);
SearchResult<User> userResult = identityAPI.searchUsers(so.done());
List<User> userList = userResult.getResult();
String mailto = new String();
for (User user : userList) {
UserWithContactData proUser = identityAPI.getUserWithProfessionalDetails(user.getId());
if (proUser != null && proUser.getContactData() != null) {
mailto += ", " + proUser.getContactData().getEmail();
}
}
System.out.println(mailto);
SearchResult<User> userResult = identityAPI.searchUsers(so.done());
List<User> userList = userResult.getResult();
String mailto = new String();
for (User user : userList) {
UserWithContactData proUser = identityAPI.getUserWithProfessionalDetails(user.getId());
if (proUser != null && proUser.getContactData() != null) {
mailto += ", " + proUser.getContactData().getEmail();
}
}
System.out.println(mailto);
Let me know if this helps. Cheers, Jordi
Comments
HI.....
Resolve this problem???
I need help..
Thanks..