Ajax с JSF выдает Запрошенный контент не может быть загружен. ошибка

Я работаю над своим окончательным проектом курса и использую JSF с AJAX, но у меня есть некоторые ошибки.

В настоящее время я использую JSF 2.0 и Fancybox, подключаемый модуль jQuery. На данной странице у меня есть одна таблица данных, которая загружает мой контент. Каждая строка этой таблицы имеет ссылку, которая открывает страницу редактирования для выбранной строки. Обратите внимание, что при открытии любой новой страницы на экране появляется только модальное окно.

Если вы не знаете, это модальное окно

Итак, когда пользователь щелкнет строку, появится «страница редактирования», но она будет отображаться как модальная (вот почему я использую Fancybox).

Вот мой код для этого:

<h:dataTable id="minhaTabela" styleClass="table table-hover" var="disciplina" value="#{disciplinaMBean.listaDisciplinas}" selection="#{disciplinaMBean.disciplinaSelecionada}" selectionMode="single" >
    <h:column>
        <a class="various fancybox.ajax">
            <f:facet name="header">Name</f:facet>
            <h:outputText value="#{disciplina.nome}" />
        </a>
    </h:column>
</h:dataTable>

(...)

$(".various").fancybox({
    maxWidth    : 400,
    maxHeight   : 125,
    fitToView   : false,
    autoSize    : false,
    width       : 400,
    height      : 125,
    closeClick  : false,
    openEffect  : 'none',
    closeEffect : 'none',
    ajax : {
        type    : "POST",
        url     : "edit.xhtml",
        data    : { idDisciplina : '#{disciplinaMBean.disciplinaSelecionada.id}' }, 
        dataType: "html"                
    }
}); 

И мой edit.xhtml (пока не динамический, это для теста):

<form role="form">
    <div class="form-group">
        <label for="nome">Nome:</label>
        <input type="text" class="form-control adicionar" id="nome" />
        <br />
        <a type="button" href="#" id="excluir" class="btn btn-md btn-danger pull-left">Excluir</a>
            <a type="button" href="#" id="enviar" class="btn btn-lg btn-success pull-right">Salvar</a>
        <br />
    </div>
</form>

Когда я пытаюсь щелкнуть строку, Fancybox открывает модальное окно, но я получаю следующую ошибку:

Моя ошибка при использовании ajax :(

Если я удалю Ajax в Fancybox...

(и добавьте href="edit.xhtml" к моей ссылке)

<h:column>
    <a class="various fancybox.ajax" href="edit.xhtml">
         <f:facet name="header">Name</f:facet>
         <h:outputText value="#{disciplina.nome}" />
    </a>
</h:column>

(...)

$(".various").fancybox({
    maxWidth    : 400,
    maxHeight   : 125,
    fitToView   : false,
    autoSize    : false,
    width       : 400,
    height      : 125,
    closeClick  : false,
    openEffect  : 'none',
    closeEffect : 'none'
}); 

Это работает, но как я могу отправить дисциплину на страницу редактирования - резюмируя, как я могу редактировать дисциплину таким образом?

Моя страница загружается, но как я могу отправить информацию для обработки информации edit.xhtml? Пользуясь случаем, это лучший способ сделать то же самое? Я не знаю, правильно ли я поступаю, потому что я не нашел ни одного учебника или вопроса, подобного этому, в Google.


person Paladini    schedule 24.10.2013    source источник
comment
Возможно, эта ссылка поможет вам . Кстати, есть ли проблема с использованием реализации JSF, такой как Primefaces? Взгляните на страницу их демонстрации, если сможете.   -  person danRod    schedule 24.10.2013
comment
Да, сейчас я пытаюсь использовать Primefaces, но получаю много ошибок и не знаю почему :/   -  person Paladini    schedule 01.11.2013