ãã©ã°ã€ã³äœæ
Requires Platform 4.2+
Plug-ins
Nexaweb Client ãã©ã°ã€ã³ã¢ãŒããã¯ãã£ã¯ãéçºè ãç¬èªã®ã¿ã°ã屿§ãXML ã·ã³ã¿ãã¯ã¹ãå®è£ ã§ããããèšèšãããŠãããããã«ãã£ãŠNexaweb Java ã¢ããªã±ãŒã·ã§ã³çšNexaweb Client ã®æ©èœãæ¡åŒµã§ããŸããéåžžãéçºè ã¯æ°ããUI ã³ã³ããŒãã³ããéããŠæ©èœãæ¡åŒµããŸãããè«çæŒç®ãã¬ã€ã¢ãŠããã€ã³ãªã©ã®ã«ã¹ã¿ã ããžãã¯ãå®è£ ããããšãå¯èœã§ãã
Nexaweb Client ã§ã®äžè¬çãªäœ¿çšäŸã®1 ã€ãšããŠãé«åºŠãªãã£ãŒãæ©èœã®äœ¿çšãæããããŸããNexaweb Client ã«ã¯çµã¿èŸŒã¿ã®ãã£ãŒãæ©èœãä»å±ããŠããŸããããã®æ©èœã¯è²¡åã¢ããªã±ãŒã·ã§ã³ã«èŠããããããªé«åºŠãªãã£ãŒãã®è¡šç€ºã«ã¯äžååãªå ŽåããããŸãããã© ã°ã€ã³ã¢ãŒããã¯ãã£ã䜿çšãããšãéçºè ã¯ãµãŒãããŒãã£ã®ãã£ãŒãã³ã³ããŒãã³ããçµ±åããŠç¬èªã®XML ã¿ã°ãå®çŸ©ãããã©ãŒãããèšå®ããŠãã®ãã£ãŒãã衚瀺ããããšãã§ããŸãããã®åŸãã®ãã£ãŒããæšæºã®XAL ã®å éšã«çµã¿èŸŒãããšãã§ããŸãã
äŸ:
<window>
<borderPane/>
<label text="A custom chart" borderPosition="north" />
<!-- a specialized chart created via the plug-in architecture -->
<financialChart title="Dow Jones by year" borderPosition="center" onSelect="myPage.jsp>
<xAxis start="1950" end="2005"/>
<yAxis start="0" y="5000"/>
<pointData points="1900,2000,2020 ... "/>
</financialChart>
</window>
æè¡çãªæŠèŠ
æãåºæ¬çãªã¬ãã«ã§ã¯ããã©ã°ã€ã³ã¯com.nexaweb.client.tags.AbstractTagImpl ãæ¡åŒµããã¯ã©ã¹ã§ãããXML èŠçŽ ã«å¯Ÿãã倿Žããªã¹ã³ããŸãããã®ãããªå€æŽã¯ã
com.nexaweb.xml.events.StructureChangeEventããã³
com.nexaweb.xml.events.AttributeChangeEventã®åœ¢åŒã§è¡ãããŸãããããã®ã¯ã©ã¹ã¯ãåã¿ã°åã«ãããããåŠçããã¯ã©ã¹ãå«ãŸãããããã¿ã°ãã³ãã©ãšåŒã°ããŸãããŸãããããã®ã¯ã©ã¹ã¯ãXML ãšå®è£
ã¯ã©ã¹(ãã¢) éã®ããªããžã圢æãããããããªããžã¯ã©ã¹ãšãåŒã°ããŸãã
AbstractTagImpl ã¯ããã¹ãŠã®ãã©ã°ã€ã³ã®åºæ¬ã¯ã©ã¹ã§ãããŸãããã©ã°ã€ã³ãã¿ã€ãå¥ã«ç°¡åã«äœæã§ããããã«ã倿°ã®ãµãã¯ã©ã¹ãååšããŸããããšãã°ãContainerBridge ãŸãã¯SwingBridge ããµãã¯ã©ã¹ãšããŠäœ¿çšããã°ã
java.awt.Component ãŸãã¯javax.swing.JComponent ã«åºã¥ããUI ã³ã³ããŒãã³ããäœæã§ããŸããããã«ãJComponent ã䜿çšããŠãç¬èªã®java.awt.LayoutManager ã¯ã©ã¹ãå®è£ ããããšãã§ããŸãã
äžèšã®äŸã§ã¯ãéçºè
ã¯ããã¢ãšããŠæ©èœãããµãŒãããŒãã£è£œãã£ãŒãã³ã³ããŒãã³ããããã€ã䜿ã£ãŠããŸããAbstractTagImpl ãæ¡åŒµãããã³ãã©ã¯ã©ã¹ã¯ããã¢ã¯ã©ã¹ã§ã®å€æŽã«å¿çããã ãã§ãªããXML ã§ã®å€æŽã«åºã¥ããŠãããã®ãã¢ãæäœããŸãã
AbstractTagImpl ãšãã®ãµãã¯ã©ã¹ã¯ãStructureChangeEvents ãšAttributeChangeEventsãé¢é£ããXML èŠçŽ ãèªåçã«ãªã¹ã³ããŸãã屿§ã倿Žãããããåã¿ã°ã®è¿œå ãåé€ãè¡ãããéã«ã¯ãåãµãã¯ã©ã¹ãé©åãªæäœãå®è¡ããŸããåæ§ã«ãµãã¯ã©ã¹ã¯ãã ã¢ãªããžã§ã¯ããžã®å€æŽããªã¹ã³ããŠã€ãã³ããçºçããããã倿Žã«åºã¥ããŠUI DOM (Document Object Model) ãæŽæ°ããããšãã§ããŸããããªããžã¯ã©ã¹ã¯ãåæ¹åã®ããªããžã§ããäžæ¹ã§ã¯XML ã®å€æŽããªã¹ã³ããŠãã¢ã«æž¡ãã仿¹ã§ã¯ãã¢ã®å€æŽããªã¹ã³ããŠã€ãã³ããçºçããããã倿Žã«åºã¥ããŠDOM ãæŽæ°ããŸãã
ãã®ãã©ã°ã€ã³ãç®çã®JVM ã§å®è¡ããã«ã¯ã泚æãå¿ èŠã§ããSwing ã«åºã¥ããŠäœæãããUI ã³ã³ããŒãã³ããã©ã°ã€ã³ã¯ãSwing ãšäºææ§ã®ãã(1.2+) JVM ã§ããå®è¡ã§ããŸããã
JButton ãã©ã°ã€ã³ã®éçº
ããã§ã¯ãJButton ã³ã³ããŒãã³ãã«<jButton> ã¿ã°ããããããç°¡åãªãã©ã°ã€ã³ãéçºããŸãã<jButton> ã¿ã°ã¯ãbackGroundColor ãªã©ã®åºæ¬çãªå±æ§ãèªèããŸãããŸãã<jButton> ã¿ã°ã¯"armed" ãšããååã®ããŒã«åã®å±æ§ãå®è£
ããæå¹åãããéã«onCommand ã€ãã³ããçºçãããŸãã
<jButton> ã¿ã°ã®éçºã§ã®æåã®æé ã§ã¯ã<jButton> ã¿ã°ã«ãããããã¿ã°ãã³ãã©ãäœæããŸããJButton ã¯Swing ã«åºã¥ããã³ã³ããŒãã³ããªã®ã§ãã¯ã©ã¹ã¯SwingBridge ãæ¡åŒµããŸããããŒãµãŒã¯ãåããŠ<jButton> ã¿ã°ãæ€åºããéã«ããã®JButtonBridge ã®ã€ã³ã¹ã¿ã³ã¹ãã€ã³ã¹ã¿ã³ã¹åããããã«å¯Ÿããåæåã¡ãœãããåŒã³åºããŸãããããã®ã¡ãœããã®1 ã€ã§ããinit() ããé ã«createUiComponent() ãåŒã³åºããŸããç®çã®UI ã³ã³ããŒãã³ããäœæããã«ã¯ã次ã®ããã«ãã®ã¡ãœããããªãŒããŒã©ã€ãããå¿
èŠããããŸãã
public class JButtonBridge extends SwingBridge {
public void createUiComponent(){
setUiComponent(new JButton() );
}
}
ãã®æç¹ã§ãããªããžã¯ã©ã¹ãJButton ã³ã³ããŒãã³ããäœæããbgColor ãªã©ã®åºæ¬çãªå±æ§ã«èªåçã«å¿çããŸãããŸãããã®ã¿ã°ã"armed" 屿§ã«å¿çãããå¿ èŠããããŸããããã«ã¯ãonAttributeSet() ããªãŒããŒã©ã€ãããŠãæ°ãã屿§ãåŠçãããŸãã
public void attributeSet(AttributeChangeEvent e) throws AttributeConversionException {
String attributeName = e.getName();
String attributeValue = e.getNewValue();
//if the attribute is "armed" set it to true or false
if ("armed".equals(attributeName) ){
( (JButton)getUiComponent() ).getModel().setArmed(AttributeConverter.toBoolean(attributeValue));
}
//otherwise just fall through
else super.attributeSet(e);
}
AttributeConverter ã¯ãæååãããŒã«åãColorãåæåãªã©ã®ããŒã¿ã¿ã€ãã«å€æããã¡ãœãããæäŸãããŠãŒãã£ãªãã£ã¯ã©ã¹ã§ããattributeSet ããªãŒããŒã©ã€ãããŠAttributeConverter ã䜿çšãããšãXML ã®ãšã©ãŒãéåžžã®æ¹æ³ã§å ±åãããŸãã
<jButton> ã屿§ã®å€æŽã«å¿çã§ããããã«ãªã£ãã®ã§ã次ã¯ãJButton ActionListener ãåŒã³åºãããéã«<jButton> ã"onCommand" ã€ãã³ããå ±åããããã«ããŸããããã«ã¯ãActionListener ãå®è£ ããŠãèªèº«ãJButton ã®ãªã¹ããšããŠè¿œå ããŸããããããŠããã°ãactionPerformed() ãåŒã³åºãããéã«ãã€ãã³ãã®çºçãåŠçããAbstractTagImpl ããã¡ãœãããåŒã³åºãã ãã§æžã¿ãŸããJButtonBridge ã®æçµçãªã³ãŒãã¯æ¬¡ã®ãšããã§ããææ°ã®å€æŽã匷調衚瀺ãããŠããŸãã
public class JButtonBridge extends SwingBridge implements ActionListener{
public void createUiComponent(){
JButton b = new JButton();
setUiComponent(b);
//listen for action events so we can report them
b.addActionListener(this);
}
public void actionPerformed(ActionEvent e){
//call the method from AbstractTagImpl that reports the event
//fill in a ClientEvent object and calls the appropriate MCO/JSP/event handler
fireEvent("onCommand",null);
}
public void attributeSet(AttributeChangeEvent e) throws AttributeConversionException{
String attributeName = e.getName();
String attributeValue = e.getNewValue();
//if the attribute is "armed" set it to true or false
if ("armed".equals(attributeName) ){
( (JButton)getUiComponent() ).getModel().setArmed(AttributeConverter.toBoolean(attributeValue) );
}
//otherwise just fall through
else super.attributeSet(e);
}
}
JButtonBridge ãå®äºããã®ã§ã次ã¯JButtonBridge ã¯ã©ã¹ã«ãã£ãŠ<jButton> ã¿ã°ãå®çŸ©ãåŠçãããããããããã³ã°ã远å ããå¿ èŠããããŸããããã«ã¯ãé©åãªãšã³ããªã§ã¿ã°ãããã³ã°ãã¡ã€ã«ãäœæããå¿ èŠããããŸãããã® åŸããã®ãã¡ã€ã«ãã¯ã©ã€ã¢ã³ãã³ã³ãã£ã®ã¥ã¬ãŒã·ã§ã³å ã®ã¿ã°ãããã³ã°ãã¡ã€ã«ã®ãªã¹ãã«è¿œå ããŸããã¿ã°ãããã³ã°ãã¡ã€ã«èªäœã¯ããã³ãã©ã¯ã©ã¹ ã®ååãããã¹ããšããŠèšèŒããããåãªãã¿ã°åã®ãªã¹ãã§ãããã®ãã¡ã€ã«ãcustomTagMappings.xml ãšåŒã³ãŸãã
<tag-mappings>
<jButton>JButtonBridge</jButton>
</tag-mappings>
ãã®ãã¡ã€ã«ãäœæãããããnexaweb-client.xml ã«ãšã³ããªãŒã远å ããªããŠã¯ãªããŸããã
<client-tag-mapping> <tag-map-file>customTagMappings.xml</tag-map-file> </client-tag-mapping>
Plug-in Architecture Class Survey
次ã®è¡šã¯ãplug-iné¢é£ã¯ã©ã¹ããªã¹ãåãæŠèŠã説æããŠããŸãã
Â
| Class | 説æ |
AbstractTagImpl | å šãŠã®plug-inã®ããŒã¹ã¯ã©ã¹ |
| ContainerBridge | UI component plug-inã®ããŒã¹ã¯ã©ã¹ããã®ã¯ã©ã¹ã¯å šãŠã®java.awt.Componentsã«é©çšããå ±é屿§ã«å¯Ÿå¿ããŠããã |
SwingBridge | Swing-based plug-ins ã®ããã®ContainerBridge ã®ãµãã¯ã©ã¹ |
| LayoutBridge | ã«ã¹ã¿ã LayoutManager tagãäœæããããã®AbstractTagImplã®ãµãã¯ã©ã¹ |
| AttributeConverter | ããŒã¿typeã«å±æ§å€ã倿ãããšã©ãŒãçµ±äžãå ±åãããŠãŒãã£ãªãã£ã¯ã©ã¹ |
Plug-in Class Lifecycle
æ°ããXALãããã¯ãæ¢åã®UI DOMã«å ãããããšã :
1. ã«ãŒããšã¬ã¡ã³ãã«é¢é£ããã¯ã©ã¹åãæ€çŽ¢ãããã
2. ã¯ã©ã¹ãããŒããããŠããªããã°ãããŒããããã
3. handler ã¯ã©ã¹ã®æ°ããã€ã³ã¹ã¿ã³ã¹ãäœæãããã
4. çŸåšã® ClientSession ã§ setSession() ããã³ãã©ããåŒã³åºãããã
5. Handlerã¯StructureChangeListener ãšAttributeChangeListener ãšã㊠XAL elementã«è¿œå ãããã
6. setElement() ã¯XAL element ã§ handler ã«åŒã³åºãããã
7. init() ã¯handler ã«åŒã³åºãããã
8. "onCreate" ã€ãã³ãã¯ãã³ãã©ã«ããåŒã³åºãããã
ãã®ããã»ã¹ã¯å šãŠã®XAL ãããã¯ã§äžåã®ã¿è¡ãããŸãããã®ãããã¯ã®root elementã¯ãããã«èšå®ãããåããã³/ãŸãã¯æåã®å±æ§ãæã£ãŠããå¯èœæ§ããããŸããAbstractTagImplã¯ããããã®ç¶æ³ã«å¯ŸåŠã ããããinit() ã«åŒã³åºãããããšãã§ãã2ã€ã®ã¡ãœãããæäŸããŠããŸãã"parseInitialChildren()" ã¡ãœããã¯ãã®ããŒã·ã³ã°ããã»ã¹ãåæelementã®å šãŠã®åã«å埩ãè¡ããŸãã"parseInitialAttributes()" ã¡ãœããã¯ãelementäœæåŸã«èšå®ããããã®ããã«ãonAttributeSet()ã§åæelementã®å±æ§ããã£ãŒãããŸããå ãã ContainerBridgeã¯ããã® init() ã¡ãœããã§ããã©ã«ãã«ãããããã®ã¡ãœãããåŒã³åºããŸãã
XAL blockãUI DOMããé€å€ãããå Žå :
- unload() 㯠root element ã«å¯Ÿããhandler ã«åŒã³åºãããã
- handler 㯠StructureChangeListener ãšAttributeChangeListener ãšã㊠XAL element ããé€å€ãããã
- handler ã¯é€å€ããã root Element ã®ååãšã¬ã¡ã³ãã®ããã»ã¹ãååž°çã«å埩ãã afterChildRemoved() ãåŒã³åºããŸãã
onChildRemoved()ã«åªå ããhandler classãååšããå Žåãååž°çæŽæ°ãçºçããããã«afterChildRemoved()ãåŒã³åºããªããŠã¯ãªããŸããã
Packaging Plug-Ins
ãã©ã°ã€ã³ã¯ã¿ã°ãããã³ã°ãã¡ã€ã«ãã¿ã°ãã³ãã©ã¯ã©ã¹ããã¢ã¯ã©ã¹ã®3ã€ã®ãªãœãŒã¹ã§æ§æãããŠããŸããæã ã®äŸã§ã¯ãJButton ãã¢ã¯ã©ã¹ã¯å šãŠã® Swing ã®äºææ§ã®ãã JVM ã«å«ãŸããŸãããæã«ãããã¢ã¯ã©ã¹ãå¥ã® JAR ãã¡ã€ã«ã«å«ãŸããŸãã
Tag-handling class ãšãã¢ã¯ã©ã¹ã¯ MCO ãšåãå±éã«ãŒã«ã«åŸã£ãŠããŸãããã¿ã°ãããã³ã°ãã¡ã€ã«ã¯ãæšæºãã¡ã€ã«ãšããŠèŠãªãããŸããäžéšã®éçºè ã¯ãã¿ã°ãããã³ã°ãã¡ã€ã«ãšã¯ã©ã¹ãçµã¿ åãããJAR ãã¡ã€ã«ã«å ¥ããã®ãç°¡åã ãšããããšãããããããããŸãããäŸãã°ãJButtonBridge ã¯ã©ã¹ãšcustomTagMappings.xml 㯠"jButtonPlugin.jar." ãšåŒã°ãããã®ã®äžã« JAR ãã¡ã€ã«åãããŠããŸãããã®å Žåãnexweb-client.xml classpath ã倿Žããã® jar ãå«ã¿ãã¿ã°ãããã³ã°ãã±ãŒã·ã§ã³ã倿Žã"classpath://" specifier. ã䜿çšããŸããnexaweb-client.xml ã®ããã¥ã¡ã³ãã® client classpath 調æŽã«ã€ããŠã®è©³çްãã芧ãã ããã
<!-- classpath changed to include our plug-in jar file -->
<client-classpath>
<pre-loaded-in-applet-def>
<archive name="jButtonPlugin.jar"
path="/WEB-INF/client/lib/jButtonPlugin.jar"/>
</pre-loaded-in-applet-def>
</client-classpath>
<!-- load the tag mapping file from the classpath -->
<client-tag-mapping>
<tag-map-file>classpath://customTagMappings.xml</tag-map-file>
</client-tag-mapping>
æåŸäžã€ã®ããã±ãŒãžãªãã·ã§ã³ã¯ãã¹ã¿ãŒãã¢ããã§ããã®ãã©ã°ã€ã³ã«ãã£ãã¿ã°ãåããŠééããæã«ãplug-in class ãããŒããããããšã§ããã¹ã¿ãŒãã¢ããã§ããŒããããã¯ã©ã¹ã¯ Nexaweb ã®ããŒãã£ã³ã°ã¢ãã¡ãŒã·ã§ã³ã®æäžã«ããŒããããŸãããäžæ¹ã§ããªã³ã¶ãã©ã€ã§ããŒããããå€§èŠæš¡ plug-in ã ãš Nexaweb ã®ã¢ããªã±ãŒã·ã§ã³ãæ°ç§ããªãŒãºããŠããŸããŸããã¢ããªã±ãŒã·ã§ã³ããå€§èŠæš¡ plug-in ãã³ã³ã¹ã¿ã³ãã«ããŸãé »ç¹ã«äœ¿çšãããå Žåãã¹ã¿ãŒãã¢ããã®éããŒãããæ¹ãè¯ãã§ããããã¯ã以äžã®ããã« tag-mapping ãä¿®æ£ããããšã§å¯èœã§ãã
<tag-mappings>
<jButton loadPolicy="onStartup">JButtonBridge</jButton>
</tag-mappings>
Plugin Namespaceã®å®çŸ©
Namespaces ã¯ãã¿ã°äžåŒã§å®çŸ©ããããšãã§ããŸãã以äžã®äŸã¯ãNexaweb Data Frameworkã§ãããã¯ãã©ã°ã€ã³ ã¢ãŒããã¯ãã£ã䜿çšãå®è£ ãããŸãããã®ãã©ã°ã€ã³ãå®çŸ©ããXMLã¯ä»¥äžã§ãã
<tag-mappings namespace="http://openxal.org/core/data"
document="bindings">
<mapping class="com.nexaweb.plugin.data.bridge.BindingBridge"
name="binding"/>
</tag-mappings>
ããã§ã¯openxal.org/core/data namespace ã®ã¿ã° "binding" ã宣èšããŠããŸãã
çµèŸŒã¿ã³ã³ããŒãã³ãããåªå ããã
ãã©ã°ã€ã³ã¯çµèŸŒã¿ XAL ã¿ã°ã®æ¯ãèãã眮æããããã«äœ¿çšããããšãã§ããŸããäŸãã°ããã©ã°ã€ã³ã <button> ãšããŠå®çŸ©ããããšãbutton ã®æ¬æ¥ã®æ¯ãèãã眮æããŸããÂ
Packaging and Distributing Nexaweb Application Plug-ins
Nexaweb ã¢ããªã±ãŒã·ã§ã³çšãã©ã°ã€ã³ã®ããã±ãŒãžåãšé åž
Nexaweb 4.2.x ã§ Nexaweb ã¢ããªã±ãŒã·ã§ã³ã«äœ¿çšãããã©ã°ã€ã³ãããã±ãŒãžåããŠé åžããã«ã¯ã次ã®äœæ¥ãè¡ãå¿ èŠããããŸãã
- ãã©ã°ã€ã³ã®ãããã§ã¹ã ãã¡ã€ã«ã§ãã©ã°ã€ã³ã«é¢ããæ å ±ãæå®ãã
- ãã©ã°ã€ã³ã® JAR ãã¡ã€ã«ãã¢ããªã±ãŒã·ã§ã³ã® WEB-INF/client/plugins ãã£ã¬ã¯ããªã«é 眮ãã
ãã©ã°ã€ã³ã®ãããã§ã¹ããã¡ã€ã«ãžã®ãã©ã°ã€ã³æ å ±ã®è¿œå
ã¢ããªã±ãŒã·ã§ã³ã«äœæããåãã©ã°ã€ã³ã«é¢ããæ å ±ãããã©ã°ã€ã³ã®ãããã§ã¹ããã¡ã€ã«ãplugin.xmlã«è¿œå ããå¿ èŠããããŸããNexaweb ã§ã¯ããã©ã°ã€ã³ã®ãããã§ã¹ãã䜿çšããŠããã©ã°ã€ã³ã®ã³ã³ãã³ããæ±ºå®ããŸãã
åãã©ã°ã€ã³ã® plugin.xml ãã¡ã€ã«ã«æ¬¡ã®ã»ã¯ã·ã§ã³ã远å ããŸãã
Â
ã»ã¯ã·ã§ã³ | 説æ |
<plugin> </plugin> | ãã®ã¢ããªã±ãŒã·ã§ã³ã«ã€ã³ã¯ã«ãŒãããåºæã®ãã©ã°ã€ã³ãç¹å®ããŸãã éå§ã¿ã°ã«ã¯ãã©ã€ããµã€ã¯ã«ãããŒãžã£ãŸãã¯ãã©ã°ã€ã³ã®æœè±¡ MCO ãæå®ããããªãã·ã§ã³ã® class 屿§ãã€ã³ã¯ã«ãŒãã§ããŸãã |
<info> </info> | ãã©ã°ã€ã³ ã¹ããŒããšã¹ã¿ã€ã«ã·ãŒãã®å Žæãªã©ããã©ã°ã€ã³ã«é¢ããäžè¬çãªæ
å ±ãæå®ããŸãã |
<tag-mappings> </tag-mappings> | ãã©ã°ã€ã³ãã¢ããªã±ãŒã·ã§ã³ã«è¿œå ããã¿ã°ãå®çŸ©ããè€åã¿ã°ã®å®çŸ©ãã¡ã€ã«ã®å Žæãšãã¢ããªã±ãŒã·ã§ã³ããã©ã°ã€ã³ãããŒãããéã«äœ¿çšããããªã·ãŒãæå®ããŸãã |
次ã«ããã©ã°ã€ã³ã®ãããã§ã¹ããã¡ã€ã«ã®ãµã³ãã«ã瀺ããŸãã
Â
<plugin class="MyPlugins"> <info> <provider-name>Nexaweb Technologies</provider-name> <author>James</author> <description>This plug-in automates automatic automation.</description> <version>10.3.4</version> <schema-location>schema/plugin.xsd</schema-location> <stylesheet-location>stylesheet/stylesheet.xss</stylesheet-location> </info> <tag-mappings namespace="http://nexaweb.com/charts" document="nxml"> <mapping name="barChart" class="com.nexaweb.plugins.BarChart" icon="barChart.gif" loadPolicy="onStartup"/> <mapping name="loginDialog" class="com.nexaweb.plugins.LoginDialog" icon="loginDialog.gif" definitionFile="ui/loginDialog.nxml"/> </tag-mappings> </plugin>
Â
次ã®è¡šã§ã¯ã<info> ã»ã¯ã·ã§ã³ã«å«ãŸããã¿ã°ã«ã€ããŠèª¬æããŸãã
Â
info ã¿ã° | 説æ |
<provider-name> </provider-name> | ãã©ã°ã€ã³ã®äœæè
ã«é¢ããæ
å ±ãæå®ããŸãã |
<author> </author> | ãã©ã°ã€ã³ã®äœæè
ã«é¢ããæ
å ±ãæå®ããŸãã |
<description> </description> | ãã©ã°ã€ã³ã®ç®çãŸãã¯äœ¿çšã«é¢ããæ
å ±ãæäŸããŸãã |
<version> </version> | ãã©ã°ã€ã³ã®ããŒãžã§ã³çªå·ãæå®ããŸãã |
<schema-location> </schema-location> | ãã®ãã©ã°ã€ã³ã®ã¹ããŒã ãã¡ã€ã«ã®å Žæãç¹å®ããŸãã |
<stylesheet-location> </stylesheet-location> | ãã®ãã©ã°ã€ã³ã®ã¹ã¿ã€ã«ã·ãŒãã®å Žæãç¹å®ããŸããããã©ã«ãã®é
åžå
ã¯ãJAR ãã¡ã€ã«ãé
眮ãããŠãããã£ã¬ã¯ããªå
ã® /stylesheet ã§ãã |
次ã®è¡šã§ã¯ã<tag-mapping> ã»ã¯ã·ã§ã³ã«å«ãŸããã¿ã°ã®å±æ§ã«ã€ããŠèª¬æããŸãã
Â
tag-mapping ã¿ã°ã®å±æ§ | 説æ |
namespace | ãããã®ã¿ã°ãããã³ã°ãå±ããåå空éãæå®ããŸãã |
mapping name | ã¢ããªã±ãŒã·ã§ã³ã«è¿œå ããããã©ã°ã€ã³ã§äœ¿çšãããã¿ã°åãæå®ããŸãã |
ãããã³ã°åã®å±æ§
Â
屿§ | 説æ |
class | ãã®ã¿ã°ãå±ããã¯ã©ã¹ãæå®ããŸãããã®ã¯ã©ã¹ã¯ãlib ãŸã㯠classes ãã©ã«ãå
ã«ååšããå ŽåããããŸãã |
icon | ãã®ã¿ã°ã«é¢é£ä»ããããŠããä»»æã®ã€ã¡ãŒãžãæå®ããŸããã€ã¡ãŒãžã¯ãã€ã¡ãŒãžãã©ã«ãã«å¯ŸããŠçžå¯Ÿçãªäœçœ®ã«ãããŸãã |
loadpolicy | ãã®å±æ§ã䜿çšããŠãNexaweb ã®èµ·åæã«ãã®ãã©ã°ã€ã³ãèµ·åããããšãæå®ããŸãããã®å±æ§ã®æå¹ãªå€ã¯ onStartup ã®ã¿ã§ãããã®å±æ§ãã¿ã°ãããã³ã°ã«ååšããªãå Žåã¯ããã®ã¿ã°ãæåã«æ€åºããããšãã«ãã©ã°ã€ã³ãèµ·åããŸãã |
definitionFile | è€åã¿ã°ã«å«ãŸããè€æ°ã®é¢æ°ãå®çŸ©ãããã¡ã€ã«ã®å Žæãæå®ããŸãã |
ãã©ã°ã€ã³ãã£ã¬ã¯ããªã®æ§é
Nexaweb Studio ã§ã¯ããã«ãããã³é åžã«ç¬èªã®ãã£ã¬ã¯ããªæ§é ã䜿çšããŠãã©ã°ã€ã³ãæ§æãããŸãã
ãã©ã°ã€ã³ã®ãã«ãã«ã¯ã次ã®è¡šã«ç€ºããã£ã¬ã¯ããªæ§é ã䜿çšãããŸãã
Â
ãã«ãçšãã£ã¬ã¯ã㪠| å«ãŸããå
容 |
/source | Java ãœãŒã¹ã³ãŒãã |
/dependencies | ãã©ã°ã€ã³ãšäžç·ã«ããã±ãŒãžåãããªãäŸåé¢ä¿ã§ãå®è¡æã«ååšããå¿
èŠããããŸãã |
/dependencies/lib | JAR ãã¡ã€ã« (äŸ: jaxp.jar)ã |
/dependencies/plugins | ãã®ãã©ã°ã€ã³ãäŸåããä»ã®ãã©ã°ã€ã³ (äŸ: data-interfaces-plugin.jar)ã |
/PluginContent | Web ã¢ããªã±ãŒã·ã§ã³ã® WebContent ãšã»ãŒåãã§ããNexaweb ã§ã¯ããã®ãã£ã¬ã¯ããªã®ã³ã³ãã³ã㯠plugin.jar æ§é ã®ã«ãŒãã«é
眮ãããŸãã |
/build | ãã«ãã®ã¹ããŒãžã³ã°é åã§ããã«ã ããã»ã¹ãçµäºãããšåé€ãããå ŽåããããŸãã |
/dist | ãã«ãã«ãã£ãŠçæããããã©ã°ã€ã³ JARã |
ãã©ã°ã€ã³ã®é åžã«ã¯ã次ã®è¡šã«ç€ºããã£ã¬ã¯ããªæ§é ã䜿çšãããŸãã
Â
é
åžçšãã£ã¬ã¯ã㪠| å«ãŸããå
容 |
/lib | ãã©ã°ã€ã³ãäŸåãã JAR ãã¡ã€ã«(ã¯ã©ã¹ã¯ã¯ã©ã€ã¢ã³ãã«ãã€ã³ããããŠãããå
¬ã«æäŸå¯èœã§ããå¿
èŠããããŸã)ã |
/images | ã€ã¡ãŒãžã |
/PLUGIN-INF/docs | ãã©ã°ã€ã³ããã¥ã¡ã³ãã®å Žæã |
/PLUGIN-INF/schema/plugin.xsd   | ãã©ã°ã€ã³ã®ã¹ããŒã ãã¡ã€ã«ã |
/stylesheet/stylesheet.xss | ãã©ã°ã€ã³ã®ã¹ã¿ã€ã«ã·ãŒãã |
/plugin.xml   | ãã©ã°ã€ã³ã®ãããã§ã¹ã ãã¡ã€ã«ã |