我是初学者
我必须在支付管道(paymentpipeline.xml)中添加一些流程,因为我必须做一些集成工作。请告诉我如何将流程添加到付款管道以及如何调用它们? 此外,我无法在我的项目中找到paymentpipeline.xml。我是否需要在commercepipeline.xml中创建它或进行更改?感谢
答案 0 :(得分:0)
您可以在%DYNAMO_HOME%\..\DCS\src\config\atg\commerce\payment
要创建新流程,您需要实现PipelineProcessor。
import atg.nucleus.logging.ApplicationLoggingImpl;
import atg.service.pipeline.PipelineProcessor;
public class MyProcessor extends ApplicationLoggingImpl implements PipelineProcessor
{
public int[] getRetCodes()
{
return new int{1,2};
}
public int runProcess(final Object pParam, final PipelineResult pResult) throws Exception
{
// do what ever you wish to do here
//1 is transaction status
return 1;
}
}
这将创建一个在调用管道链时调用的类。接下来需要的是你需要创建一个属性文件来创建一个组件。它通常看起来像这样。
$class=/demo/atg/order/processor/MyProcessor
$scope=global
修改PipelinePayment.xml并添加新的管道链。在链调用PipelineManager.runProcess中调用单个处理器并传递已创建处理器的链接。
<pipelinechain name=" lastExistingchain" transaction="TX_REQUIRED" headlink="sampleDemoLink">
<pipelinelink name="sampleDemoLink" transaction="TX_REQUIRED">
<processor jndi="demo/atg/order/processor/MyProcessor"/>
</pipelinelink>
</pipelinechain>
根据您的要求,您可能必须在现有管道链中添加此管道链接,而不是创建新链。