잠시 동안 PrettyFaces에서 JSF (MyFaces)를 사용하고 있습니다. POST 요청을 제외한 모든 것이 완벽하게 작동합니다.
PrettyFaces에서 JSF POST 요청이 작동하지 않는 이유
유일한 문제는 내가 PrettyFaces에 의해 다시 쓰여진 페이지로 POST 요청을 할 수 없다는 것입니다. 쇼 스토퍼이기 때문에 도움을 주시면 감사하겠습니다. 오늘까지 2.0.4.Final
을 사용
<dependency>
<groupId>org.ocpsoft.rewrite</groupId>
<artifactId>rewrite-servlet</artifactId>
<version>2.0.5.Final</version>
</dependency>
<dependency>
<groupId>org.ocpsoft.rewrite</groupId>
<artifactId>rewrite-config-prettyfaces</artifactId>
<version>2.0.5.Final</version>
</dependency>
<url-mapping id="market-view-item">
<pattern value="/market/#{viewItem.itemId}" />
<view-id value="/market/view-item.xhtml" />
</url-mapping>
의 pom.xml
꽤-config.xml에. 2.0.5로 업그레이드해도 작동 할 것으로 기대했지만 아무것도하지 않았습니다.
웹 페이지 양식 :
<h:form prependId="false">
<p:inputTextarea rows="3" style="width:450px; margin:5px 0;" autoResize="false"/>
<h:commandButton action="#{test.doSomething}" class="pg-button" value="Add comment"/>
</h:form>
CDI 콩 : POST 요청이 왜
@Named("test")
@RequestScoped
public class TestB {
public void doSomething() {
System.out.println("I work.........");
}
}
어떤 아이디어 실행되지 않습니다? 내가하는 일이든, 그들은 단지 일어나지 않습니다. 전혀 오류가 없습니다. 아무것도 아니야.
제출 (Add comment
) 버튼을 누르면 Chrome에서 요청 (ajax/non-ajax (두 시도))했지만 doSomething
메소드가 실행되지 않습니다.
콩 (viewItem
) (역시 예쁜 구성으로 지정)을 시도했지만 아무것도하지 않았습니다. 나는 100 가지 방법으로 시도했다 ...
나는 모든 예쁜 얼굴 설정 매핑이 GET 요청에서 완벽하게 작동한다는 것을 언급해야한다.
지금까지 해결책/답변을 찾을 수 없습니다.
정말 도움이됩니다.
감사합니다.
이것이 정말로 PrettyFaces 문제인 경우 먼저 시도해야합니다. pretty-config.xml 파일에서 매핑을 제거한 다음 원본 URL "/market/view-item.xhtml"을 사용하여 페이지를 테스트하십시오. 경로 매개 변수를 사용할 때 간단한 테스트를 위해 코드에 유효한 ID를 하드 코딩해야합니다. 그래도 작동하지 않으면 다른 문제가 발생합니다. 액션이 실행되지 않으면 대개 포스트 프로세스 중에 rendered = "false"인 부모 컴포넌트에 의해 발생합니다. RequestScoped를 SessionScoped로 바꿔서 이것이 차이가 나는지 확인할 수도 있습니다. – chkal
@chkal은 시작하기에 좋은 곳이라고 생각합니다. 문제가 계속 발생하면 http://ocpsoft.org/support/의 지원 포럼에 문의하여 문제를 재현하는 작은 샘플 프로젝트를 업로드하십시오. 버그를 싫어하기 때문에 문제를 해결하고 새로운 버전을 출시 할 것입니다! :) – Lincoln
안녕, 얘들 아! 기꺼이 도와 줘서 고마워. @chkal 페이지 .xhtml 페이지가 제대로 작동합니다. POST는 PrettyFaces가 매핑 한 링크에서 작동하지 않습니다. SessionScoped는 내가 찾고있는 것이 아닙니다. 링컨의 경우 : 저는 이것을 위해 샘플 프로젝트를 만들려고합니다. – zmirc