Возвращаемое значение, которое вы возвращаете в методе execute (), должно быть одним из отображенных в качестве значений.
Поскольку у вас нет имени результата, подобного этому:
<result name="resultName"></result>
Будет использоваться значение по умолчанию: «успех». Вы должны вернуть значение «success» в метод execute ().
Значение результата метода execute - это имя отображенного результата. Чтобы отправить сообщение, вы должны добавить атрибут String в вашем действии (и получить его для получения), а в методе execute сделать что-то вроде
this.message = "my message";
Редактировать: как получить сообщение с помощью ajax:
Если вы установили сообщение в своем действии в атрибуте «String message» и у вас есть метод получения этого атрибута (public String getMessage ()), вы можете получить эту информацию, получая доступ к этому свойству в объекте, который вы получаете при вызове ajax. Если вы делаете вызов ajax, например, с помощью jquery, вы можете получить его следующим образом:
$.ajax({
url: '/yourAjaxUrl',
success: function(data) {
var message = data.message;
alert('The message is '+message);
$('#my_result').html(message);
}
});
Edit:
В XML-коде Struts в теге пакета необходимо определить тип json:
<result-types>
<result-type name="json" class="com.googlecode.jsonplugin.JSONResult">
...
</result-types>
и добавьте json-plugin.jar, который можно скачать здесь
больше информации в http://code.google.com/p/jsonplugin/wiki/Documentation