Ich entwickle ein JIRA-Plugin, und ich versuche, ein benutzerdefiniertes Feld in die Add project
Seite. Soweit ich weiß, kann ein benutzerdefiniertes Feld nur für eine Ausgabe hinzugefügt werden. Ist es möglich, ein benutzerdefiniertes Feld (ein Textfeld oder eine Auswahlliste) auf Projektebene hinzuzufügen?
Antworten
Zu viele Anzeigen?Kurze Antwort: machbar, aber nicht besonders leicht
Dazu müssen Sie ein WebWork-Plugin schreiben, das die Java-Klasse ändert, die die Webseite bearbeitet. Der Prozess besteht darin, dass die Datei actions.xml die Datei AddProjects.jspa enthält, z. B.
<action name="project.AddProject" alias="AddProject" roles-required="admin">
<view name="error">/secure/admin/views/addproject.jsp</view>
<view name="input">/secure/admin/views/addproject.jsp</view>
</action>
die Ihnen mitteilt, dass der Klassenname AddProject lautet, und die Sie erweitern können, damit der Benutzer einen Wert in dieses neue Feld eingeben kann. Dann müssen Sie auch entscheiden, wie Sie die Werte für jedes Projekt speichern wollen (weitere Informationen finden Sie in den Büchern Practical JIRA Plugins oder JIRA Development Cookbook). Das Schwierigste dabei ist, dass die Vorlagendateien .jsp-Dateien sind, die Sie nicht direkt mit einem Plugin ändern können. Normalerweise schreibe ich einen ServletFilter, um JavaScript einzubinden und die AddProjects-Seite auf diese Weise zu ändern.
Es gibt keinen eleganten Weg, aber Sie können möglicherweise Folgendes verwenden Benutzerdefinierte Projekteigenschaften für JIRA Plugin.
Dieses Plugin ermöglicht es:
- Liste der benutzerdefinierten Felder für Projekte definieren
- benutzerdefinierte Felder pro Projekt definieren
- Benutzerdefinierte Felder auf der Projektverwaltungsseite ausfüllen