2014-01-15 3 views
0

я делаю свой первый primefaces мобильного сайт и у меня есть странное поведение с видомprimefaces мобильного вид навигация

<pm:page> 
    <pm:view id="viewName"> 
     <ui:include src="home.xhtml" /> 
    </pm:view> 
    <pm:view id="otherView"> 
     <ui:include src="viewWhereThereIsTheForm.xhtml" /> 
    </pm:view> 
</pm:page> 

если я использовать CommandButton (либо час: или р :) во второй точке зрения (Отервью) страница перезагружается, и будет показано первое представление (ViewName), каждый раз, даже если требуются элементы в форме, где есть кнопку

примеры:

<h:form> 

    <h:inputText value="#{upload.something}" required="true" /> 

    <h:commandButton value="Upload" action="#{upload.upload()}" /> 
    //or 
    <p:commandButton value="Send" action="#{upload.trySomething()}" /> 

</h:form> 

я «Уже пробовали какое-то решение, всегда без успеха:

  • возвращение. "Вечер: VIEWNAME" в методе защитного боба
  • RequestContext.getCurrentInstance() выполнить (" PrimeFaces.navigate ('# VIEWNAME', {реверс : 'правда'})");
  • FacesContext.getCurrentInstance(). GetExternalContext(). Redirect ("pageName.xhtml # viewName");

единственное, что я пытался с успехом является

<p:commandButton value="Send" action="#{upload.tryLatLon()}" oncomplete="PrimeFaces.navigate('#viewName', {reverse : 'true'})" /> 

, но он не работает на час: CommandButton ...

, как я могу сделать эту остановку ?!

любая помощь будет оценена!

(я использую PrimeFaces 3.5, PrimeFaces Mobile 0.9.4 и JSF 2.2)

ответ

0

Вам может понадобиться, чтобы иметь <pm:content> тег внутри <pm:view>.

Я пытался перемещаться между представлениями с использованием <h:outputLink>, как показано на рисунке код:

<pm:page title="Mobile"> 
     <pm:view id="mainView"> 
     <pm:header title="Music Inventory" /> 
     <pm:content> 
      <h:form id="mainForm">     
       <h:outputLink value="#artist?transition=slide">Artists</h:outputLink> 
      </h:form> 
     </pm:content> 
     </pm:view> 
     <pm:view id="artist"> 
      <pm:header title="Artists"> 
      <h:outputLink value="#mainView">Go to Home</h:outputLink> 
      </pm:header> 
      <pm:content> 
      <h:outputText value="Some detail of artists" /> 
      </pm:content> 
     </pm:view> 
    </pm:page> 

Некоторые образцы, приведенные в Primefaces Мобильный сайт не работает, как показано в витрине.

0

Вы должны обновить свои исходные тексты до 5.0 для получения лучших результатов. У меня была одна и та же проблема, я пробовал много вещей, я не мог получить какое-либо решение, обновляя мои исходники до последней версии, решил проблему.

Это фрагмент кода, который находится в файле pom.xml, где вы можете обновить свои прайс-листы с 3.5 до 5.0, просто изменив номер в теге версии.

  <dependency> 
      <groupId>org.primefaces</groupId> 
      <artifactId>primefaces</artifactId> 
      <version>5.0</version> 
     </dependency> 
Смежные вопросы