2011-12-07 19 views
5

के साथ काम कर रहे मैप किए गए क्रियाएं मैं स्ट्रूट 2 के साथ एक वेब ऐप बना रहा हूं, और मुझे किसी भी यूआरएल के साथ काम कर रहे मैप किए गए कार्यों के साथ कोई समस्या है।स्ट्रूट 2 - किसी भी यूआरएल

मेरी struts.xml फ़ाइल में, मैंने कुछ कार्यों के साथ "/ पंजीकरण" के नामस्थान के साथ एक पैकेज कॉन्फ़िगर किया है, जिसमें मुख्य "पंजीकरण" है। मेरे ऐप का संदर्भ रूट "ऐप/टेस्ट" है।

पंजीकरण फॉर्म तक पहुंचने के लिए, मैं "लोकलहोस्ट: 8080/ऐप/टेस्ट/पंजीकरण/रजिस्टर.एक्शन" पर जा सकता हूं और यह मेरा फॉर्म लोड करता है और बहुत अच्छा काम करता है।

हालांकि, अगर नामस्थान के बाद यूआरएल में कुछ भी जोड़ा जाता है, जैसे "लोकलहोस्ट: 8080/ऐप/टेस्ट/पंजीकरण/मनमानी/टेक्स्ट/यहां/रजिस्टर.एक्शन", फॉर्म अभी भी लोड हो गया है।

मैं इसे होने से रोकना चाहता हूं, ताकि आप केवल उचित यूआरएल फॉर्म तक पहुंच सकें। मैंने struts.xml और web.xml में कई अलग-अलग कॉन्फ़िगरेशन विकल्पों का प्रयास नहीं किया है, और मुझे वेब पर आसानी से इस समस्या पर ज्ञान नहीं मिल रहा है।

किसी भी मदद की सराहना की जाएगी, धन्यवाद!

struts.xml

<struts> 
    <package name="myPackage" namespace="/registration" extends="struts-default"> 
     <result-types> 
      <result-type name="tiles" class="org.apache.struts2.views.tiles.TilesResult"/> 
     </result-types> 
     <action name="register" class="edu.uconn.test.action.RegistrationAction" method="input"> 
      <result name="input" type="tiles">/register.tiles</result> 
     </action> 
    </package> 
</struts> 

उत्तर

7

सेट struts.mapper.alwaysSelectFullNamespace निरंतर true रहे हैं:

<constant name="struts.mapper.alwaysSelectFullNamespace" value="true" /> 

यह अनपेक्षित परिणाम हो सकता है जब यूआरएल में आर्बिट्ररी पैरामीटर (जैसे, wildcarding, regex पैटर्न मिलान के लिए एस 2 के समर्थन का लाभ)।

+0

धन्यवाद डेव! मजेदार बात यह है कि मैंने स्ट्रैट्स कॉन्फ़िगरेशन प्रलेखन को कुछ नज़र ओवर दिए, और पूरी तरह से इसे याद किया। परवाह किए बिना बहुत सराहना की! –

+1

@ ए कुसुआनो यह थोड़ा दफनाया गया है; मैंने अगली रिलीज में इसे कहीं भी उल्लेख करने के लिए एक नोट बनाया है, इसलिए धन्यवाद :) –

+0

@ डेव न्यूटन: स्ट्रैट्स 2 के साथ यह मुख्य समस्या है छुपा दस्तावेज है :) –

संबंधित मुद्दे