Joget DX 8 Stable Released
The stable release for Joget DX 8 is now available, with a focus on UX and Governance.
...
ไฟล์โครงการที่สร้างจะถูกวางไว้ที่ไดเรกทอรีที่ระบุในพรอมต์คำสั่งเช่น: เรียกใช้คำสั่งใน "C:\" จะวางไฟล์โครงการไว้ภายในไดรฟ์ C
To get the correct jogetDependencyVersion in order to build a proper project file with correct dependencies, check the file name specified in the ในการรับ jogetDependencyVersion ที่ถูกต้อง ต้องสร้างไฟล์โปรเจ็กต์ที่เหมาะสมโดยมีการพึ่งพาที่ถูกต้องให้ตรวจสอบชื่อไฟล์ที่ระบุใน ".m2" folder under directory of, eg:ภายใต้โฟลเดอร์ เช่น
C:\Users\(your computer name)\.m2\repository\org\joget\wflow-core\"5.0.11"
...
Code Block |
---|
/joget_src/wflow-plugin-archetype/create-plugin.sh packageName pluginFolderName jogetDependencyVersion |
- Sample Screenshot in ภาพตัวอย่างหน้าจอใน Mac:
c. Open/Import the maven project with your favorite IDE. Joget team recommends เปิด / นำเข้าโครงการ Maven ด้วย IDE ที่คุณชื่นชอบ ทีม Joget แนะนำ NetBeans IDE.
...
Refer to the document of the plugin type listed in อ้างถึงเอกสารประเภทปลั๊กอินที่ระบุไว้ใน Plugin Types. Find the ค้นหา abstract class and interface that need to be extended and implemented by your plugin.และ interface ที่ต้องการขยายและดำเนินการโดยปลั๊กอินของคุณ
ตัวอย่าง: เพื่อพัฒนา Example: To develop a Userview Menu plugin, the plugin class need to extends the org.joget.apps.userview.model.UserviewMenu abstract class.
...
A plugin will have to implements the abstract method of Plugin Base Abstract Class and Interface and also the abstract method of the individual abstract class and interface for the plugin type.
Exampleตัวอย่าง: To develop a Userview Menu plugin, the following methods have to be implemented by the plugin. Please refer to the plugin documents for the details of each methods.
...
Exampleตัวอย่าง: For a plugin named "GanttChartMenu", we need to create a "GanttChartMenu.properties" file under "[Plugin project directory]/src/main/resources/message" directory.
Sample content for GanttChartMenu.properties file
Code Block | ||
---|---|---|
| ||
org.joget.sample.GanttChartMenu.pluginLabel=Gantt Chart org.joget.sample.GanttChartMenu.pluginDesc=To display form data in Gantt Chart layout userview.ganttChart.label.title=Title userview.ganttChart.label.week=Week |
Example: Use the getMessage method in getLabel and getDescription methods to return i18n label and description.
Code Block | ||
---|---|---|
| ||
public String getLabel() { return AppPluginUtil.getMessage("org.joget.sample.GanttChartMenu.pluginLabel", getClassName(), "message/GanttChartMenu"); } public String getDescription() { return AppPluginUtil.getMessage("org.joget.sample.GanttChartMenu.pluginDesc", getClassName(), "message/GanttChartMenu"); } |
Example: For property options of a GanttChartMenu plugin, the following shows the sample code implementation of getPropertyOptions method and the GanttChartMenu.json file
Code Block | ||
---|---|---|
| ||
public String getPropertyOptions() { return AppUtil.readPluginResource(getClassName(), "/properties/GanttChartMenu.json", null, true, "message/GanttChartMenu"); } |
Code Block | ||
---|---|---|
| ||
[{ title : '@@userview.ganttChart.edit@@', properties : [{ name : 'id', label : 'Id', type : 'hidden' }, { name : 'customId', label : '@@userview.ganttChart.customId@@', type : 'textfield', regex_validation : '^[a-zA-Z0-9_]+$', validation_message : '@@userview.ganttChart.invalidId@@' }, { name : 'label', label : '@@userview.ganttChart.label@@', type : 'textfield', required : 'True', value : '@@userview.ganttChart.label.value@@' }] }] |
Example: For getRenderPage method of a GanttChartMenu plugin, the following show the sample code implementation of getRenderPage method and the "GanttChartMenu.ftl" FreeMarker template.
Code Block | ||
---|---|---|
| ||
public String getRenderPage() { Map model = new HashMap(); model.put("request", getRequestParameters()); model.put("element", this); PluginManager pluginManager = (PluginManager)AppUtil.getApplicationContext().getBean("pluginManager"); String content = pluginManager.getPluginFreeMarkerTemplate(model, getClasstName(), "/templates/GanttChartMenu.ftl", "message/GanttChartMenu"); return content; } |
Code Block | ||
---|---|---|
| ||
<div> <h1>@@userview.ganttChart.label.title@@ : ${element.properties.title!}</h1> </div> |
...