मैं अपने webapp में यह काम कर कोड है:बनाना p: ज तरह CommandButton काम: बटन
<h:button value="Edit user..." outcome="/public/user" >
<f:param name="userName" value="#{authBean.authUser}"/>
</h:button>
यह क्या करता है:
- यह बटन एक प्राप्त
- यह गुजरता भेजने बनाता है यूआरएल में निर्दिष्ट पैरामीटर, इसे बुकमार्क करने योग्य बनाता है।
मैं क्या जरूरत है:
- ऐसा लगता है कि ज काम करना चाहिए: बटन के ऊपर (जीईटी भेज)
- बटन (अन्य Primefaces बटन की तरह दिखना चाहिए जैसे एक छवि ... आदि के साथ सजाया।)।
यह सबसे करीब है मैं मिल सकता है:
<p:commandButton value="Edit user..." action="/public/user?faces-redirect=true" ajax="false" immediate="true" >
<f:param name="userName" value="#{authBean.authUser}"/>
</p:commandButton>
यह एक पोस्ट है कि किसी GET के साथ नए URL रीडायरेक्ट कर दिया जाता भेजता है। हालांकि प्रक्रिया में पैरामीटर खो गया है।
एक और विचार:
<p:linkButton value="Edit user..." href="http://localhost:8080/contextpath/faces/public/user.xhtml">
<f:param name="userName" value="#{authBean.authUser}"/>
</p:linkButton>
प्राप्त अनुरोध निरस्त किया गया है (??? Firebug के अनुसार) और वर्तमान पृष्ठ फिर से पोस्ट किया जाता है।
ऐसा करने का सही तरीका क्या है?
अद्यतन: इस (एक खाली पृष्ठ पर, कोई पी के साथ: DataTable): काम करता है
<p:linkButton value="Edit user..." href="http://localhost:8080/contextpath/faces/public/user.xhtml?userName=myusername">
लेकिन यह नहीं करता है: में
<p:linkButton value="Edit user..." href="http://localhost:8080/contextpath/faces/public/user.xhtml?userName=myusername&secondParam=otherValue">
बाद परिणाम:
500: javax.servlet.ServletException: त्रुटि पार्सिंग/नमूना 0.xhtml: त्रुटि पता लगाया गया [लाइन: 14] रेफर 0 सेइकाई "दूसरा पैराम" ';' के साथ समाप्त होनी चाहिए सीमांकक।
UPDATE2: & भाग निकले जाना चाहिए:
<p:linkButton value="Edit user..." href="http://localhost:8080/contextpath/faces/public/user.xhtml?userName=myusername&secondParam=otherValue">
और यह अच्छा लगता है ... लेकिन मैं अभी भी निरस्त किया गया और बाद पुन: भेज पाने:
alt text http://img64.imageshack.us/img64/1017/primefaceslinkbutton.jpg
यह एक पूरा खाली पृष्ठ है जिसे मैं कोशिश कर रहा हूं इसके साथ:
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:c="http://java.sun.com/jsp/jstl/core"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:p="http://primefaces.prime.com.tr/ui">
<h:head />
<h:body>
<h:form>
<p:linkButton value="Click me" href="http://stackoverflow.com" />
</h:form>
</h:body>
</html>
प्राइमफ़ेस 2.1 रिलीज़।
मैं पी का प्रयास किया: LinkButton है, लेकिन यह काम नहीं करता। फायरबग का कहना है कि जीईटी अनुरोध निरस्त कर दिया गया है, और वर्तमान पृष्ठ दोबारा पोस्ट किया गया है। – egbokul
क्षमा करें, मैंने एक पूर्ण प्रतिलिपि/पेस्ट नहीं किया है। मैं "href" विशेषता का उपयोग कर रहा हूं, "यूआरएल" को नेटबीन्स द्वारा भी स्वीकार नहीं किया जाता है। अब मैं अन्य जावास्क्रिप्ट की जांच करूंगा ... – egbokul
एक खाली पृष्ठ पर पी: लिंक बटन काम करता है ... प्रकार। एफ: परम काम नहीं करता है। यदि मैं सीधे यूआरएल में पैरामीटर निर्दिष्ट करता हूं (उदाहरण: ".../user.xhtml? UserName = myusername") यह काम करता है। जब मैं एक और पैरामीटर निर्दिष्ट करता हूं, तो ग्लासफ़िश 500 कहता है: javax.servlet.ServletException: त्रुटि पार्सिंग/नमूना 0.xhtml: त्रुटि का पता लगाया गया [line: 14] इकाई "relVerMin" का संदर्भ ';' के साथ समाप्त होना चाहिए सीमांकक। (relVerMin मेरा दूसरा पैरामीटर था, जैसे: ".../delrel.xhtml? relVerMaj = 1 और relVerMin = 0") – egbokul