Я предполагаю, что когда вы говорите, «сохранить» вы имеете в виду некоторые пользовательские кнопки, а не на кнопку «OK», которая сохраняет диалоговые данные к узлу.
Добавить кнопку handler в кнопку сохранения. Функция обработчика должна извлекать объект диалога, перебирать все поля в нем и отправлять значения в ваш пользовательский сервлет. Обработчик должен быть что-то вроде этого
function(button,event){
//fetch dialog using the save button
var dialog = button.findParentByType('dialog');
var params = {}; //parameters to post
var textfields = dialog.findByType('textfield'); //returns all textfields in the dialog
for(i=0;i<textfields.length;i++){
params[textfields[i].name] = textfields[i].getValue(); //add the value to params with name same as the name you have provided to the textfield
}
$.post("path to your servlet" , params); // you can also use CQ.shared.HTTP of cq's ext js package to do the post
}
В случае, если все, что вы хотите сделать, это опубликовать данные формы по нажатию на кнопку «OK», который поставляется по умолчанию, установите formurl свойство диалога на пути вашего пользовательского сервлета. В этом случае, если значения не сохраняются обратно как свойства с соответствующими именами на соответствующем узле, как обычно, диалог не сможет загружать значения при повторном редактировании компонента.
Благодарим вас за ответ! Я думаю использовать метод CQ.HTTP.POST. Я дам ему попробовать. – Sri