2010-07-16 3 views
2

По причинам отладки, я хочу видеть вывод моего ResponseWriter непосредственно в стандартном выпуске. Поскольку ответ будет обработан JavaScript, я не могу видеть вывод там.Как перенаправить Java ResponseWriter?

Есть ли простое решение для перенаправления ResponseWriter на стандартный выход?

+0

Принятая ответ указывает на то, что вы используете JSF. Вы действительно должны были упомянуть об этом в своем вопросе и тегах. Это средство не является (напрямую) доступно в Servlet API. – BalusC

+0

Я действительно не знал, что ResponseWriter доступен только в JSF, я добавил тег –

+0

Это имя пакета 'ResponseWriter' сообщает об этом. Поскольку вы отметили «сервлеты», я изначально думал, что существует некоторая двусмысленность мирянина и что вы на самом деле означали «response.getWriter()», как вы можете получить из «HttpServletResponse». Для этого необходим совершенно другой подход, как предложил Божо, и подробно ответил мне [здесь] (http://stackoverflow.com/questions/3242236/capture-and-log-the-response -body). – BalusC

ответ

2

Как насчет этого?

ResponseWriter rw1, rw2; // ... 
rw2 = rw1.cloneWithWriter(new PrintWriter(System.out)); 

Документация для ResponseWriter

Используйте любой автор вашей находке наиболее удобный

И, наконец, system.out.

+0

Большое спасибо, отлично работает! Теперь я могу найти свою ошибку;) –

1

Существует - вы можете обернуть объекты ответа и записи. Но в этом случае есть лучшее решение: используйте Firebug. Он расскажет вам, каков был ответ.

+0

Спасибо, я просто попробовал это тоже, и это очень полезно –

Смежные вопросы