2009-10-02 15 views
9

FAIR चेतावनी: इस प्रश्न को उत्तर देने में बहुत मुश्किल हो रही है जब तक कि आपके पास जिरा के साथ अनुभव न हो और उनके स्रोत (एंटरप्राइज़ उपयोगकर्ता) तक पहुंच न हो।एटलसियन जेरा प्लगइन विकास: वेग टेम्पलेट्स

अभिवादन सब,

मैं जो AbstractIssueSelectAction फैली एक प्लगइन लिख रहा हूँ। मैंने देखा कि ${issue.summary}, आदि मेरे वेग टेम्पलेट के भीतर से उपलब्ध हैं, हालांकि, अन्य चीजें हैं जिन्हें मैं बेनकाब करना चाहता हूं। मैं यह नहीं समझ सकता कि वेग पैरामीटर मानचित्र में अन्य चीजों को कैसे जोड़ना है। मैंने स्टैक के माध्यम से कदम उठाने और यह पता लगाने के लिए एक रिमोट डीबगर का भी उपयोग किया कि क्या हो रहा है - लेकिन यह गहरा ढेर के कारण दोनों के लिए बहुत अस्पष्ट था और तथ्य यह है कि मैं सभी स्रोतों को सही तरीके से संलग्न नहीं कर पाया (और वेबवर्क सामानों में से कई को obfuscated लगता है)।

मैंने इस सवाल को एटलसियन समर्थन मंचों पर भी पोस्ट किया है, मैं समस्या पर और अधिक आंखों के लिए यहां क्रॉस-पोस्टिंग कर रहा हूं।

उदाहरण कार्रवाई कोड:

public class MyOperation extends AbstractIssueSelectAction { 

    // ... 
    private final Issue myIssue; 

    public String doCollect() throws Exception { 
     log.debug("Running doCollect()"); 
     return "collectinfo"; 
    } 
} 

उदाहरण प्लगइन config:

<webwork1 key="unique_key" name="My Name" class="java.lang.Object"> 
    <actions> 
    <action name="com.mycompany.jira.extensions.MyOperation" alias="MyOperation"> 
    <view name="collectinfo">/templates/myoperation-collectinfo.vm</view> 
    <view name="success">/templates/myoperation-success.vm</view> 
    </action> 
    </actions> 
    </webwork1> 

वेग टेम्पलेट में, ${issue.summary} सही ढंग से वर्तमान मुद्दे का सारांश पर ले कर जाता है, लेकिन अगर myIssue कोई अन्य समस्या है, उदाहरण के लिए था , मैं ${myIssue.summary} का उपयोग करने में सक्षम होना चाहता हूं।

धन्यवाद! -Carl

+0

ध्यान दें: यह सवाल jira 3.X-4.x और के बारे में था शायद नहीं रह गया है jira 5.X पर लागू होता है +, यह अब AbstractIssueSelectAction तरह – cmyers

उत्तर

7

जानकारी प्राप्त करने के लिए $ action.mymethod() का उपयोग करने के बारे में, जहां mymethod एक तरीका है जिसे आप एक्शन क्लास "MyOperation" में परिभाषित करते हैं? वेग पैरामीटर यह पता लगाने के लिए उत्सुक हैं कि वे कैसे आबादी प्राप्त करते हैं।

~ मैट

+2

मैट, सार वर्गों का विस्तार करने के लिए आम है मैंने कहा था कि समस्या थी। शर्मनाक रूप से, मेरे गेटर्स शून्य लौट रहे थे क्योंकि उन्हें प्रारंभ नहीं हुआ था, मेरा init() फ़ंक्शन केवल बाद में चलाया जा रहा था। दुर्भाग्यवश, जेआईआरए ने एनपीई को वेश्या की तरह निगल लिया, इसलिए मैं केवल आपके सुझाव की कोशिश करने के बाद बताने में सक्षम था - $ {action.myMethod()} को एनपीई का खुलासा किया। धन्यवाद मैट! – cmyers

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