How can I modify Built_In_Service:wm.EDIINT.rules:processPayload? I want to invoke my own program in processPayload.
The version of webMethods I use is 9.12.
Anybody can help me?
Hi Jenny,
modifying built-in services is not allowed due to license restrictions.
Usually you will not even see its internal implementation, only its signature (input/output).
You can try to reconfigure the processing rule to invoke your own service instead of the built-in one.
Regards,
Holger
Hi Jenny,
In 8.2 MWS EDIINT Module Configuration Properties, you can specify a custom service to process the payload via wm.EDIINT.userProcessPayloadService property. Service wm.EDIINT.rules:processPayload checks the payload type. If it is not application/XML, application/EDI-X12, etc., the payload will be processed by the service specified in the userProcessPayloadService property. This would be used for processing flat file payloads, for example.
I think that, if you want to customize the way XML or EDI payloads are processed, you would have to modify the wM wm.EDIINT.rules:processPayload service, which of course is not recommended, or do as Holger suggests and invoke a custom service via processing rule.
Thanks,
Mary
Hi Holger,Mary
Thank you. I see. I’ll try it.
Hi Holger , Mary
I changed the My webMethods Processing Rule to invoke my own flow service, when the Server received the message, IS Service Usage page showed the log that this flow service has been invoked.
But I suspect that the flow service did not run, because I write in the first step of the debugLog did not work.
Is there any configuration I haven’t been do?
Hi Jenny,
Since there are at least a couple of ways to process the payload with a custom service, can you explain why you need to use a custom service? What payload type do you want to process with the custom service?
If you are using userProcessPayloadService, you don’t need a new processing rule.
Thanks,
Mary
Hi Mary
Thanks for your reply.
When we use webMethods 8, we modified the wm.EDIINT.rules:processPayload to invoke our own service to deal with
EDIINT messages, but now we upgrade to use webMethods 9.12, and we found that wm.EDIINT.rules:processPayload can not be modified,
so I need to use custom service.
Hi Jenny, we are 8.2 and our requirements did not necessitate that we modify the wM processPayload service so this is a suggestion only. Since you can’t modify the wM services at your level, I think you will need to create a processing rule similar to EDIINT Process Message and assign it so that your inbound EDIINT documents will be handled by your rule. The wM rule invokes wm.EDIINT.rules:processMsg. You will need to copy that service and invoke your custom processMsg service with your new rule. Also, you will need to copy the wM wm.EDIINT.rules:processPayload service and customize that, ensuring that it is the service that is invoked via your custom processMsg service.
Thanks,
Mary
In general you are not supposed to modify the out of box provided WmEDIINT standard services other wise you will deal various complications especially during upgrades/service packs releases there is a chance that your modified things will be overwritten and also SAG doesn’t support the services that’s been touched when there is any issue arise (deal at your own risk)
You may have to go with Mary’s suggestions on handling the custom services and make utilize calling the standard services and this way you can assign the default or custom EDIINT rules configuration etc…and ofcourse there will be lot of unti testing involved for it to work as desired.
HTH,
RMG