You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@beehive.apache.org by "Carlin Rogers (JIRA)" <de...@beehive.apache.org> on 2005/09/21 23:37:29 UTC
[jira] Assigned: (BEEHIVE-771) Accessing netui tag properties in tag development
[ http://issues.apache.org/jira/browse/BEEHIVE-771?page=all ]
Carlin Rogers reassigned BEEHIVE-771:
-------------------------------------
Assign To: Daryl Olander (was: Carlin Rogers)
Assigning to Daryl as he is looking into BEEHIVE-532.
Daryl - I think this one could be closed as a duplicate of BEEHIVE-532.
> Accessing netui tag properties in tag development
> -------------------------------------------------
>
> Key: BEEHIVE-771
> URL: http://issues.apache.org/jira/browse/BEEHIVE-771
> Project: Beehive
> Type: Improvement
> Components: NetUI
> Versions: V1Beta, v1m1, V1
> Environment: WindowsXP SP2, tomcat 5.0.28, MySQL 4.1
> Reporter: V.Gnanasegaran
> Assignee: Daryl Olander
> Fix For: TBD
>
> I am trying to develop a custom tag based on the netui textbox. The syntax of the tag definision is the same and the ony difference is the datasource.
> <bjeff:textBoxi dataSource="container.item.modul.tips.field" style="width:410px;" maxlength="100"/>
> The purpose of the tag is to enable/dissable a info. button next to the text box.
> Her is my custom tag code
> public class TextBoxiTag extends TextBox {
> private Field field;
> /**
> * @see org.apache.beehive.netui.tags.AbstractClassicTag#getTagName()
> */
> public String getTagName() {
> return "TextBoxi";
> }
> /**
> * @see javax.servlet.jsp.tagext.BodyTagSupport#doEndTag()
> */
> public int doEndTag() throws JspException {
> // Finn referanse til actionForm
> StringBuilderRenderAppender results = new StringBuilderRenderAppender(new StringBuilder());
> ExpressionEvaluator ee = ExpressionEvaluatorFactory.getInstance();
> ExpressionHandling eh = new ExpressionHandling(this); // param: INetuiTag
> BaseForm formularet = (BaseForm) eh.evaluateExpression(
> "{actionForm}", "form", this.pageContext);
> String scriptId = null;
> // String dataSource = evaluateDataSource().toString();
> String dataSource = "{" + this._dataSource + "}";
>
> if (ee.containsExpression(dataSource)) {
> Object object = eh.evaluateExpression(
> dataSource, "element", this.pageContext);
> if ((object == null) || (!(object instanceof Felt))) {
> Logger logger = Logger.getInstance(this.getClass());
> logger.warn(Bundle.getString("Tags_ContentExpressionNull", dataSource));
> return BodyTagSupport.SKIP_PAGE;
> }
> this.field= (Field) object;
> } else {
> return BodyTagSupport.SKIP_PAGE;
> }
> if(hasErrors()) {
> reportErrors();
> localRelease();
> return EVAL_PAGE;
> }
> String textObject = felt.getFeltVerdi() == null? "" : felt.getFeltVerdi();
> if(textObject == null)
> textObject = "";
> results.append("<input type=");
> results.append("\"text\"");
> /////////////////////////////////////////////////
>
>
> Some code here
> /////////////////////////////////////////////////
> String regexp = felt.getFeltValideringsuttrykk();
> results.append(" onBlur=\"");
> results.append(this.getOnBlurJavascript());
> results.append("(this,'");
> results.append(formularet.getFeilOverskrift());
> results.append("<div>");
> results.append(StrengUtil.fjernSuffix(felt.getElementTekst(), FeltUtil.OBLIGATORISK_SUFFIX));
> results.append("</div>', '");
> String feilmelding = felt.getElementFeilmeldingstekst();
> if ((feilmelding == null) || (feilmelding.equalsIgnoreCase(BaseController.NULLTEKST))) {
> feilmelding = "";
> }
> results.append(feilmelding);
> results.append("', '");
> results.append(this.getSisteParam());
> results.append("');\"");
>
> results.append("/>");
> if(scriptId != null)
> results.append(scriptId);
>
> write(results.toString());
> localRelease();
> return EVAL_PAGE;
> }
> In the region "Some code here" I would like to retrive those attributes "maxlength", "style" which I passed through in the jsp tag. I used this.getValue("maxlength") did NOT retrive the value of maxlength. Have you any suggession how I can retrieve those values and put it into the textbox tag attribute using this.setMaxlength() and so on.
> An other problem is binding the netui tag datasource variable properly. The value of the binded datasource in NOT updated with the new value.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira