[ 
https://issues.apache.org/jira/browse/OFBIZ-4231?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13011936#comment-13011936
 ] 

Jacques Le Roux commented on OFBIZ-4231:
----------------------------------------

Sergei,

I agree, I just ask you to discuss this on dev ML in order to be sure to have 
all the parties being aware before taking a decision (I'd apply your patch but 
I'm not sure of other opinions)

> User login : system does not have related Party
> -----------------------------------------------
>
>                 Key: OFBIZ-4231
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-4231
>             Project: OFBiz
>          Issue Type: Bug
>    Affects Versions: Release Branch 10.04
>         Environment: Data scope: SEED
>            Reporter: Sergei
>            Assignee: Jacques Le Roux
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> I faced a problem, which will appear for the seed db initialization (not 
> demo)!!! 
> I have setup email sending for order confirmation, the each new email has  
> the attachment in PDF. During the mail sending chain of services are called 
> (via callback events) and in the end of the chain these services are called:
>     <!-- dataresource role ecas -->
>     <eca service="createDataResourceRole" event="invoke">
>         <action service="ensurePartyRole" mode="sync" run-as-user="system"/>
>     </eca>
>     <service name="ensurePartyRole" engine="simple"
>             
> location="component://party/script/org/ofbiz/party/party/PartySimpleMethods.xml"
>  invoke="ensureNaPartyRole" auth="false">
>         <description>Ensure that the party is in the specified 
> role.</description>
>         <attribute name="partyId" type="String" mode="IN" optional="true"/>
>         <attribute name="roleTypeId" type="String" mode="IN" 
> optional="false"/>
>     </service>
> as you can see these services are called by "system" UserLogin.
> ensurePartyRole - throws an exception, because of partyId = null. I 
> researched db model, and found that the UserLogin "system" exists, but 
> without a party. 
> However, these methods are called after the mail was sent, but the overall 
> transaction is rollbacked, so the next retries fire the same problems, as 
> result we have 3 retries and 3 mails in the mailbox.
> To fix this problem, I have created the "system" party and associated it with 
> the UserLogin (I got it from the Demo data):
>     <!-- Party for System UserLogin Account - just in case logic depends on 
> it -->
>     <Party partyId="system" partyTypeId="PERSON"/>
>     <Person partyId="system" firstName="System" lastName="Account"/>
>     <!-- various automated processes will cause it to be put in this role 
> anyway -->
>     <PartyRole partyId="system" roleTypeId="PACKER"/>
>     <UserLogin userLoginId="system" partyId="system"/>

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to