2009-11-10 5 views
0

Я хочу написать ajax-код в java i.e. Я хочу использовать функциональность ajax без использования ajax. Я ищу некоторый API JAVA, который может это сделать.Написание кода Ajax в JAVA

Как мы публикуем данные веб-страницы через JAVA-программу, аналогично, я хочу выполнить операцию ajax через программу JAVA.

Просьба предложить.

+0

Мое приложение - основное приложение для Java. Я хочу отправить форму, написав код Java. Но часть содержимого страницы проходит через Ajax. Я хочу эти данные. Как я могу это сделать с GWT? – Rites

+0

«Асинхронный Javascript» лучше всего выполняется с помощью javascript. Это простой инструмент для обучения функционально, особенно с помощью библиотеки, например Prototype или jQuery. – arbales

ответ

-1

Быстрый ответ - GWT. Однако зачем вам это делать? JavaScript похож на Java. Если вы знаете Java, вы можете легко написать код JavaScript. Преимущество использования JavaScript было бы в том, что вы были бы более универсальным и не были бы заблокированы в одном инструменте. Использование GWT для генерации кода JavaScript (AJAX) не является естественным.

+0

Мое приложение - основное приложение Java. Я хочу отправить форму, написав код Java. Но часть содержимого страницы проходит через Ajax. Могу ли я сделать это GWT? – Rites

+0

Да, GWT легко справляется с этой задачей. И я не согласен с Ральфом в том, что JavaScript похож на Java. Это кошмар, чтобы закодировать его для тех, кто привык работать с классами и объектами. –

+0

Java, безусловно, лучший язык в целом, я не могу об этом спорить. Однако в последнее время JavaScript стал настолько распространенным из-за AJAX и динамических сайтов, что, безусловно, стоило бы учиться. Такие технологии, как JQuery, облегчают и увлекают работу. Использование GWT связывает вас и делает вас беспомощным, когда вы хотите сделать что-то, чего он не предоставляет. – stepanian

0

Если ваше приложение работает в браузере и его веб-приложении, вы можете перейти с GWT. Если ваше приложение является основным Java-приложением, вы можете просто создать HttpURLConnection и использовать его.

+0

Его основное приложение для Java. Использование HttpURLConnection не работает должным образом, если содержимое страницы проходит через Ajax – Rites

+0

Мое приложение - это основное приложение Java. Я хочу отправить форму, написав код Java. Но часть содержимого страницы проходит через Ajax. Как я могу это сделать с GWT? – Rites

0

JavaServer Faces (JSF) 2.0 должны иметь возможность делать частичные обновления страницы на месте, используя AJAX под крышкой. Мне кажется, что это то, что вам нужно.

Я думаю, что самый простой способ получить сервер с поддержкой JSF 2.0, работающий прямо сейчас, использует последнюю версию Glassfish.

0

Я предлагаю вам взять лок на DWR - Easy Ajax for Java:

DWR это библиотека Java, которая позволяет Java на сервере и JavaScript в браузере взаимодействовать и вызывать друг друга как можно проще.

DWR является Easy Ajax для Java

Это позволяет АЯКС-римента ваши веб-приложения с минимальными усилиями. Это не полная новая веб-структура; он фокусируется исключительно на ajaxification, позволяя вам сохранить и использовать существующую веб-инфраструктуру.

Если вы хотите использовать «более тяжелую» веб-структуру, такую ​​как JSF, существуют фреймы JSF, готовые к использованию ajax, такие как IceFaces и RichFaces с предоставлением ajax из коробки.

0

Существует множество инфраструктур AJAX на основе Java.

  • Apache Struts [сложные AJAX-теги (за счет интеграции DOJO-инструментарий)]

  • Direct Web Remoting является основой для вызова методов Java непосредственно из Javascript кода.

  • Guise™ Framework - элегантная архитектура серверной стороны компонента, который не требует разработчиков писать HTML или JavaScript

  • GWT - среда разработки программного обеспечения Java, что делает написание приложений AJAX

  • JAXCENT - Just-Java Framework и API для AJAX

  • IT Mill - Структура Ajax для разработки веб-приложений для языка Java на стороне сервера

и еще более JAVA AJAX Frameworks

0

вы можете отправить форму на сервлет, когда ответ сервлета, вы с помощью JQuery или прототип Javascript framwork, чтобы получить данные с сервера, используя функцию вызова Ajax. Я пробовал, и он прошел гладко!

Удачи вам!

1

Для этого вы можете использовать jQuery. В jQuery у вас есть отличный плагин form, который ненавязчиво изменяет существующую форму в ajaxform.

HTML (в JSP):

<form id="myform" action="myservlet" method="post"> 
    <input type="text" name="foo"> 
    <input type="submit"> 
</form> 
<div id="message">${message}</div> 

JS ((в) непосредственно в JSP):

$('#myform').ajaxForm({ 
    success: function(message) { $('#message').text(message); } 
}); 

Java ((в) непосредственно в doPost() метод сервлета за myservlet):

String foo = request.getParameter("foo"); 
String message = "You entered 'bar': " + ("bar".equals(foo) ? "yes" : "no"); 

if ("XMLHttpRequest".equals(request.getHeader("x-requested-with"))) { 
    // Ajax request. 
    response.getWriter().write(message); 
} else { 
    // Normal request. 
    request.setAttribute("message", message); 
    request.getRequestDispatcher("page.jsp").forward(request, response); 
} 

Если вы хотите, чтобы получить какие-то шаги дальше, вы можете использовать Gson в сервлете, чтобы преобразовать полные объекты Java в нотацию объектов Javascript (JSON). Таким образом, вы можете получить доступ к данным javabean-like в Javascript.

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