2012-01-10 68 views
0

我有一个应用程序需要接受来自外部服务器的POST请求以确认付款。我不想打破默认的引用渲染策略(REDIRECT_TO_BUFFER),它为用户提供比ONE_PASS_RENDER更好的体验,但是,外部服务对302不满意,并且一直重试直到它放弃。如何覆盖检票中特定页面的呈现策略

是否有一些明智的方法可以告诉wicket只使用ONE_PASS_RENDER处理此请求的特定页面?

回答

1

尝试使用Resource而不是Page来处理此请求。这样,您可以返回所需的任何响应(HTTP标头和有效负载)以保持外部服务的快乐。

尽管这是一个较低级别的API。如果您需要使用渲染页面进行响应,您可能需要自己渲染(有很多println()调用),或者通过某种方式让Wicket执行此操作。

但是,由于它是对外部服务的响应,因此我认为它会期望某种简单的文本,XML或JSON响应,这些响应很容易手工完成。

+0

有趣的是,今晚我可能会试一试。 我们得到了正在工作的Wicket邮件列表的答案,但它不是直观的。本质上,我们创建了一个登录页面,在构建时抛出一个RestartResponseException,它由一个页面提供程序构建,其中包含实际需要的页面和一个RedirectPolicy#NEVER_REDIRECT。 – 2012-01-17 15:48:00

+0

不客气! :-) – 2012-01-19 19:46:05