Passivate option in VO transient attributes & AM connection type

Hi
My English isn't very good.
I use Jdeveloper 11.1.1.3.0
I have 2 questions:
1. I defined some View Obj and in each View Obj I made transient attributes. I don't know if the Passivate option of these transient attributes should be enable or not?
2. for AM connection type I use JDBC DataSource : "jdbc/ConnectionName". If I change JDBC DataSource to "java:comp/env/jdbc/ConnectionName", does it exist any difference?
Habib

If your transient attributes are updateable, but you use them only within the scope of a single request (e.g. you set the value within a particular request and use it only until the end of this request but not later), then you do not have to passivate them. However, if they are updateable and you need their values to survive across multiple requests, then you must ensure that these attributes are passivated. In order to configure them to passivate you should do the following:
1. Check the checkbox "Passivate State (e.g. Current Row, Bind Variables, etc.)" in the section "General/Tunning" in VO's definition dialog box;
2. Either check the checkbox "Including All Transient Values" in the same section or leave it unchecked but check the checkbox "Passivate" in the definition of the corresponding VO attributes.
N.B. The setting "Include All Transient Values" affects not only the transient VO attributes but the SQL-derived VO attributes (that are not entity-based) too.
The configuration parameter "jbo.txn.disconnect_level" has nothing to do with passivation/activation. The correct way to test if your VOs behave correctly under passivation/activation is to disable AM pooling (e.g. to uncheck the checkbox "Enable Application Module Pooling" in the corresponding AM Configuration dialog box). When AM Pooling is disabled ADF passivates the corresponding AM state at the end of each HTTP request and activates it at the beginning of next request and so on. In this way you can check if your VOs are passivation/activation-safe.
Please, have a look at the article [url http://docs.oracle.com/cd/E23943_01/web.1111/b31974/bcstatemgmt.htm#sm0318]Application State Management in the documentation for more information and detailed explanation.
Dimitar

Similar Messages

  • Error while creating Transient Attribute in VO

    Hi.,
    I am using jdeveloper 11.1.1.5.,
    I had created a GlAcctYearlyBalEO with corresponding VO., I had created an transient attribute GaybCurrBal with type BigDecimal., While i am trying to create another transient attribute GaybCloseBal with type BigDecimal I am getting an error as
    Invalid identifier found in Attribute Name or Type
    GaybCloseBal

    Hello wilhelm,
    If you copy the attribute name from somewhere make sure that your GaybCloseBal has no spaces at the end.

  • Passivate Transient Attributes

    I have a transient attribute in a View Object that reflects the results of a costly calculation. Passivate to PS_TXN seems to me the best way to keep the result from one request to another.
    1. Has the calculated value to be cached by setAttributeInternal in the view row internal buffer, or has it to be cached as a member of the view row impl ?
    Passivation calls the getter, so it makes no difference. But how are members of view row objects cleared in the case they are "recycled" ?
    2. It seems to me that activating a transient attribute is somewhat buggy: the getter is always called before the restored value appears in the mInner-mCalcs member of a view row, which calculates the value unnecessarily. If the value was not cached with setAttributeInternal, it never appears in mCals.

    If your transient attributes are updateable, but you use them only within the scope of a single request (e.g. you set the value within a particular request and use it only until the end of this request but not later), then you do not have to passivate them. However, if they are updateable and you need their values to survive across multiple requests, then you must ensure that these attributes are passivated. In order to configure them to passivate you should do the following:
    1. Check the checkbox "Passivate State (e.g. Current Row, Bind Variables, etc.)" in the section "General/Tunning" in VO's definition dialog box;
    2. Either check the checkbox "Including All Transient Values" in the same section or leave it unchecked but check the checkbox "Passivate" in the definition of the corresponding VO attributes.
    N.B. The setting "Include All Transient Values" affects not only the transient VO attributes but the SQL-derived VO attributes (that are not entity-based) too.
    The configuration parameter "jbo.txn.disconnect_level" has nothing to do with passivation/activation. The correct way to test if your VOs behave correctly under passivation/activation is to disable AM pooling (e.g. to uncheck the checkbox "Enable Application Module Pooling" in the corresponding AM Configuration dialog box). When AM Pooling is disabled ADF passivates the corresponding AM state at the end of each HTTP request and activates it at the beginning of next request and so on. In this way you can check if your VOs are passivation/activation-safe.
    Please, have a look at the article [url http://docs.oracle.com/cd/E23943_01/web.1111/b31974/bcstatemgmt.htm#sm0318]Application State Management in the documentation for more information and detailed explanation.
    Dimitar

  • Issue with value of  transient attribute after filtering or sorting a table

    Hi guys,
      i'm using jdev 11.1.1.4.0 .
      i've the use case :
             - a table with a column containing a checkbox to mark the selection of  a row
    <af:column align="center" sortProperty="TemIsChosen" filterable="true"
    sortable="true" id="c6">
    <af:selectBooleanCheckbox value="#{row.bindings.TemIsChosen.inputValue}" autoSubmit="true"
    shortDesc="#{bindings.ServersIndicTempVVO.hints.TemIsChosen.tooltip}"
    id="sbc1"
    valueChangeListener="#{backing_initIndicatorsTemp.onSelectTemp}"/>
    </af:column>
             - i select one or more rows with checkboxes
             - if i filter  or sort the table, the selection of the checkboxes reset to not selected (value false by default).
         I understand that for the framework, it's a normal behavior because for filtering or sorting , it re-executes the query from database. And transient attribute is not persistent, so it goes back to the default initial value "false".
         What i would appreciate, it's that filtering or sorting has no effect on the value of the transient attribute, ie end user selection remains.
          I tried to modify query mode of the ViewObject to filter with in-memory data. It works fine but if you reset filter inputs you can't retrieve correct RowSet. Only new RowSet is stored, old is lost.
           So  now it's the filtering feature that doesn't work as expected.
       How can i implement  my use case withouth the troubles i've described.
    Best regards,
    David

    Hi Frank,
       no it's a view object level attribute inside a read-only view object.
      The view object doesn't use any entity.
      Here is the definition of the attribute in the xml file of the VO, if can help you :
    <ViewAttribute
        Name="TemIsChosen"
        IsSelected="false"
        IsPersistent="false"
        PrecisionRule="true"
        Type="java.lang.Boolean"
        ColumnType="BIT"
        AliasName="VIEW_ATTR"
        SQLType="BIT"
        Passivate="true">
        <Properties>
          <SchemaBasedProperties>
            <TOOLTIP
              ResId="ADD"/>
            <DISPLAYWIDTH
              Value="50"/>
          </SchemaBasedProperties>
        </Properties>
      </ViewAttribute>
    David

  • Show Hide transient attribute making row dirty

    Hi All
    I am using an advanced table where one of the columns(Description) is shown in detail region. To implement detail region, we need a transient attribute on the VO. I was able to get everything working. But I have the following problem.
    When the user clicks Add Rows, new rows are created for user to enter information. If the user does not make any changes and clicks Apply, no transactions are committed(which is working as expected). But when the user clicks on "Show" for one of these rows and does not enter information on any of the fields for that row, the system is throwing error on some of the mandatory fields. This is because the framework is identifying them to be dirty(Since clicking show changes the value of transient attribute on VO).
    I tried the following option to get around it, but it did not work.
    * When Show/Hide is clicked, capture that event and get the row that was clicked. Perform row.setNewRowState(row.STATUS_INITIALIZED) on that row to let system know that the row is not dirty. The problem here is that when control comes to this part of the code(be it in Controller or AM), the row status is STATUS_INITIALIZED. It becomes dirty after the Show action is processed in ProcessFormRequest(I think so..)
    To get around the issue, I had to remove the Mandatory flag on some of the fields, and implement the same manually. Also, just before committing all changes, I had to loop through all rows and see those that do not have any information entered but are still dirty. Perform row.setNewRowState(row.STATUS_INITIALIZED) on them before committing.
    Can any of you tell me a better way other than how I implemented it? I want to keep the mandatory flag on the field set(VO is based on a EO) and nto remove it. The error for no value entered should not be triggered by Show/Hide being clicked. I hope I was clear enough.
    Thanks
    Kumar
    Edited by: kvsankar on Feb 5, 2013 11:20 AM

    I did that. But I wanted the Server side validations to fire if the row was touched by the user before Submit as this is a middle page in set of pages implemented via train. I think I found the solution.
    I overrode the set method for DetailAttribute item on the VO and added the logic to set the row to STATUS_INITIALIZED if no other attribute was entered and it worked like a charm.
    Thanks
    Kumar

  • How to add new transient attribute in VO ?

    Greeting ,
    I just want to add new transient attribute in VO .suppose i have a VO which have 5 attribute and i want to add one new transient attribute type of select one choice .
    how does it possible .
    regards
    prateek
    Edited by: Prateek on Jul 10, 2011 10:25 AM

    see, i want just add a static select one choice for example :
    <af:selectOneChoice label="Connection Type"
    requiredMessageDetail="Please select a connection type"
    id="soc2" showRequired="true" autoSubmit="true"
    value="#{uploadBillDetails.connectionType}">
    <af:selectItem label="Select Connection Type" value="Select" id="si4" />
    <af:selectItem label="Landline" value="Landline" id="si3" />
    <af:selectItem label="CDMA" value="CDMA" id="si2"/>
    </af:selectOneChoice>

  • Is it okay to use VO made up of transient attributes only ??

    Dear Experts,
    I created a VO based on nothing... and later added transient attributes in it.
    It comes very handy to be used as temporary/staging tables instead of using PLSQL tables or DB tables.
    It is very easy and convenient, most importantly, I am happy that it is working fine and I based my whole application on these kind of VOs.
    I am using them for
    1) Store user selected rows in popup and display those on the main page.
    2) To store the data from main page and use those tables on summary popup.
    3) used attributes stored in them for different conditions or decision making in the page.
    I am just worried about
    1) Do I need to passivate all transient attributes?
    2) Do I need to change anything in AM pooling?
    3) What is the memory scope of this? (As of now I have only one jspx page and no taskflows)
    4) What happens when user refresh the page?
    5) What happens when the page times outs?
    6) Since everything is stored in memory when is the system allocates/deallocates memory for such kind of VOs?
    I have almost developed the application and now I am praying that it should not show any unexpected behaviours in the future ...as I have tried unconventional methods and I am not sure about these memory games. Has anyone tried this before? any experiences?
    Thanks
    Rahul

    Hi Nitish,
    Do you mean that I can use programmatic VOs  as my temporarry storage  and it will not have any memory issues?
    That is really great then.. !!!
    Thanks
    Rahul

  • Creating Transient Attributes when query is in Expert Mode

    I wanted to share a recent challenge I encountered. I had created a transient attribute in my View Object and placed it on my .jspx page. When I would navigate to the page I would receive an error telling me, "oracle.jbo.AttributeLoadException: JBO-27022: Failed to load value at index 42 with java object of type java.lang.String due to java.sql.SQLException.".
    After switching my run configuration to include the java option -Djbo.debugoutput = console, I noticed my sql statement was getting modified. I inspected the view object sql and realized the calculation for my transient object was not present. After adding the calculation for the column in my sql, I was able to run the page with no errors.
    My problem was that I had my query in expert mode so I could utilize an outer join. When I added the transient attribute after putting the query in expert mode, JDEV would not automatically make the changes to my SQL.
    It would really help if JDEV threw an alert to the user letting them know that their query is in expert mode and changes cannot be made to the SQL or it would also help if I remembered what I read in the Dev Guide. Such as when a file is read only.
    (JDEV 10.1.3.4)

    When I added the transient attribute after putting the query in expert mode, JDEV would not automatically make the changes to my SQL.Really depends on what you meant by ' transient '.
    Did you really want a 'calculated' attribute - i.e. one that is backed by a query clause - for this you needed to check the 'mapped to column or sql' in the attribute properties and also provide an SQL expression..
    Otherwise, it's just a java 'transient' attribute and doesn't have to be part of the query...

  • Property not settable error - it is a bug for transient attributes

    In WLI 8.1 I get the following error in Workshop on a Client Request method:
    "Property <name of transient attribute> of type <Java object type> is not
    settable and cannot be unmarshalled from XML."
    In my opinion it is an error, because it tries to serialize and deserialize
    a TRANSIENT attribute via XML, which should
    NOT be serialized at all (that's why it is transient).
    Regards,
    Robert Varga

    Roam,
    Thanks again for your suggestion,
    "Furthermore one should always Repair Permissions both before doing a Software Update and again afterwards."
    I honestly dont know anything about this "Repair Permissions" from the name, i though it is a verification of authentication to repair OS or some kind of credential issue, and since i m admin user then there is no point to verify it, i should be allowed to do so. Again it is my first time to do this thing in 3 - 4 years of using panther, every time i update software i never ever do this! If this step is essential for every update and installation why dont apple put them as one of TODO step during the processes (as licensing agreement) instead of keep them as an option (just my thought) Anyway, I m glad u tell me about it, and i will give it a shot tonight.
    "That may because you didn't have sufficient disk space. In fact running out of disk space can create all sorts of problems. Please tell me how disk space is available on your
    start up drive."
    That what I thought coz i have only 5.x GB left in 60 GB HD. Thats why I claimed as whining and have to scarify the lost of data by reinstall panther in order to get my mac back to work
    "So are you saying it is a bug or it is a hacker, I don't believe it is either"
    Please see second update info about password, and i m not impose anyone to believe, thats why the topic is a questioning sentence "Is this a bug.."
    "This Discussion site is not Applecare. The people here give their time voluntarily to those who are receptive to help."
    Thats why i ask for "mac expert" not "apple authority/technician" and always appreciate any suggestion.
    Anyway, that great to hear from you and i have learned new thing from your suggestion. I will let u know when i have tried it.

  • JBO-27008 in transient attributes

    I have in my VO a transient attribute defined with a sub-query.
    I had displayed this attribute as a checkbox in my UIX.
    When trying to commit changes in the page, I have the JBO-27008 message that this attribute is read-only (or course it is). What have I configured wrong to have this message? My VO attribute is set as Updateable = Never, and Passivate is on...

    Idevaldo,
    You could set Updateable to Always, and just don't do anything on the set method of your transient attribute.
    Kind regards,
    Peter Ebell
    JHeadstart Team

  • Sorting transient attributes

    Does anyone know how to take advantage of adf/uix built in sorting for view objects that contain only transient fields? For example, when I build a view object that references an entity object, sorting (via a uix table tag) works great. However, when using a view object with only transient attributes, sorting does not work through a uix table. Any ideas would really be appreciated...

    FYI,
    I've figured this out for anyone that sees this post in the future. Here's how to do it.
    1 Open the transient view object in the view object editor (by double-clicking on the view object).
    2 Select Java.
    3 Press the Class extends button.
    4 For Object, browse to the following class: SortableTransientViewObject (see below for implementation)
    5 Press OK.
    6 Select Attributes.
    7 For each attributes:
    1. Select the "Selected in Query" property.
    2. Copy the exact name of the attribute to the query column alias field.
    8 Press OK.
    SortableTransientViewObject implementation:
    =============================================================
    import java.util.Collections;
    import java.util.Iterator;
    import java.util.LinkedList;
    import java.util.List;
    import oracle.jbo.Row;
    import oracle.jbo.RowSetIterator;
    import oracle.jbo.server.ViewObjectImpl;
    import org.apache.commons.logging.Log;
    import org.apache.commons.logging.LogFactory;
    import oracle.jbo.NoDefException;
    public class SortableTransientViewObject extends ViewObjectImpl
    //flag for determining an invalid column index
    public static final int INVALID_COLUMN_INDEX_FLAG = -1;
    //default sort to INVALID_COLUMN_INDEX_FLAG
    private int sortColumnIndex = INVALID_COLUMN_INDEX_FLAG;
    private boolean sortAscending = true;
    * Sole constructor. Do not remove.
    public SortableTransientViewObject()
    * Sets the default sort order. If the order has not been pre-defined, then the
    * sort will not be executed when the view object is first created.
    * @param sortField the sort field index. Each view object row implementation
    * defines these attributes indices as constants. Those values are the values
    * that should be used for this method.
    * @param sortAscending sort ascending if true; descending otherwise.
    public void setDefaultSortOrder( int sortField, boolean sortAscending )
    this.setSortColumnIndex( sortField );
    this.setSortAscending( sortAscending );
    * ADF Framework extension.
    * <br>
    * This method is called by ADF when a view object is to be refreshed. In
    * the case of sorting, this signals that the view object should be sorted.
    * The ADF framework will have already called the setOrderByClause() method
    * which tells this view object what to sort by.
    public void executeQuery()
    sort( getSortColumnIndex(), isSortAscending() );
    * Over-riding to implement sort for transient view object.
    * <br>
    * This method will be called by the adf framework whenever a request
    * is made to sort the view object through a ui component; most
    * likely a table. The orderByClause parameter will always contain
    * the sort column and will optionally contain the sort direction.
    * <br>
    * This method parses the orderByClass parameter and sets the
    * corresponding sort index and direction. This method does not perform
    * the actual sort; the sort will not take place until the executeQuery()
    * method has been invoked.
    * @param orderByClause a string representing the sort column and sort
    * direction.
    public void setOrderByClause( String orderByClause )
    if( isNullOrEmpty( orderByClause ) ||
    isNullOrEmpty( orderByClause.trim() ))
    this.setSortColumnIndex( INVALID_COLUMN_INDEX_FLAG );
    this.setSortAscending( true );
    return;
    else
    orderByClause = orderByClause.trim();
    boolean sortAscending = true;
    String sortColumn = null;
    int spaceCharacterIndex = orderByClause.indexOf( ' ' );
    if( spaceCharacterIndex == -1 )
    sortColumn = orderByClause;
    sortAscending = true;
    else
    sortColumn = orderByClause.substring( 0, spaceCharacterIndex );
    String sortDirectionStringValue = orderByClause.substring( spaceCharacterIndex, orderByClause.length() );
    if( isNullOrEmpty( sortDirectionStringValue ) ||
    isNullOrEmpty( sortDirectionStringValue.trim() ) )
    sortAscending = true;
    else
    sortDirectionStringValue = sortDirectionStringValue.trim();
    if( "desc".equals( sortDirectionStringValue.toLowerCase() ) )
    sortAscending = false;
    try
    this.setSortColumnIndex( this.getAttributeIndexOf( sortColumn ) );
    catch( NoDefException e )
    this.setSortColumnIndex( INVALID_COLUMN_INDEX_FLAG );
    this.setSortAscending( sortAscending );
    * Sort helper method.
    * <br>
    * Sorts the view object. Because adf's built in sorting only works for
    * non-transient attributes (ie attributes from an entity object), this
    * method was created as a framework extension to support sorting.
    * <br>
    * This method accomplishes sorting by using Java's built in api for
    * sorting: the Collections framework. First, all view object rows are
    * copied into List object. Second, the list is sorted using Java's built
    * in Collections.sort method. Third, all rows are removed from the view
    * object and lastly, the view object is re-populated by iterating through
    * the list.
    * @param sortField the field to sort by.
    * @param sortAscending sort ascending if true; descending otherwise.
    private void sort( int sortFieldParameter, boolean sortAscendingParameter )
    //don't sort if the column index is invalid
    if( sortFieldParameter < 0 || sortFieldParameter >= this.getAttributeCount() )
    return;
    //step 1 - copy all rows to a List object and remove all rows from view object
    List list = new LinkedList();
    RowSetIterator rowIterator = this.getRowSet().createRowSetIterator( null );
    while( rowIterator.hasNext() )
    Row rowToAdd = (Row) rowIterator.next();
    list.add( rowToAdd );
    rowIterator.closeRowSetIterator();
    //step 2 - sort the List object.
    Collections.sort( list, new ViewObjectRowComparator( sortFieldParameter, sortAscendingParameter ) );
    //step 3 - remove all rows from view object
    rowIterator = this.getRowSet().createRowSetIterator( null );
    while( rowIterator.hasNext() )
    rowIterator.next();
    rowIterator.removeCurrentRowAndRetain();
    rowIterator.closeRowSetIterator();
    //step 4 - re-populate the view object with the sorted list.
    Iterator sortedValuesIterator = list.iterator();
    while( sortedValuesIterator.hasNext() )
    Row row = (Row) sortedValuesIterator.next();
    this.insertRow( row );
    public boolean isSortAscending()
    return sortAscending;
    private void setSortAscending(boolean sortAscending)
    this.sortAscending = sortAscending;
    public int getSortColumnIndex()
    return sortColumnIndex;
    private void setSortColumnIndex(int sortColumnIndex)
    this.sortColumnIndex = sortColumnIndex;
    =============================================================

  • Transient attribute in View Object

    I need to create a transient attribute on a VO query based ,I need a transient attr with a string value ,then I used the JDEV wizard and keep Literal value option and put a value string in value box.
    The problem is that when I drag and drop the relative property from DATA CONTROL to create an output text field , running all I don't see on web page the inserted value on VO, why ?
    thanks

    If you don't need to change this value then you can use Expression instead of Literal and put value under " ".
    But, if you need to change this value, then you can:
    - add something like this to your query: (select 'default_value' from dual) OR
    - override createInstanceFromResultSet() in your ViewObjectImpl class and set default value to row OR
    - if value of this transient object can't be null, use modified version of codigoadf approach:
    public String getDummy() {
         //return (String) getAttributeInternal(DUMMY);
        return getAttributeInternal(DUMMY) == null ? "yourValue" : getAttributeInternal(DUMMY);
    }Dario

  • Search on Transient attribute LOV not working properly.

    Hi All,
    I made LOV on a transient attribute of VO. While drag & drop it onto the page I selected the option: List of values-->ADF LOV Input.
    In LOV search form there are 2 fields : org code & org name. Whenever we provide either/both of the search parameters. It works fine but as & when we click on SEARCH button without providing any search parameters(i.e. org code & org name both are blank) it makes subsequent search of LOV with either/both of the search parameters not working.
    Please suggest any solution for the same.
    Thanks & Regards,
    Manu
    Edited by: rechin on May 16, 2012 3:16 AM

    I selected the VO attribute(while VO is opened) on which I want to create LOV. Added list of values for it with following details:
    Configuration tab :
    List Data Source - same VO as VA
    List Attribute - org code
    UI hints :
    Default list type : Input text with list of values
    Display attributes : org code, org name
    List search : All querable attributes
    let me know if you need more details.
    Edited by: rechin on May 16, 2012 3:27 AM

  • How can i use an existing vpn connection without using the option "Send all traffic over vpn connection"?

    I have been trying to get my computer (os x.7) to astablish a remote desktop connection to my work computer via a vpn tunnel. In fact I have just discovered that it works fine if i select to "send all traffic over vpn connection" from the options in the advanced setup of the vpn.
    If the option is selected microsofts "Remote desktop connection for mac" works just fine. However without selecting the option it is not taking advantage of the tunnel but tries to connect as if the tunnel would not exist.
    Now the question is how do I get program to use the vpn tunnel without checking the above option?
    Thanks for any hints and pointers.

    Then can her computer be authorized to both accounts?
    Absolutely. You can authorize any given computer to up to five iTunes Store accounts.
    If purchases are made on her account, to a computer authorized to my account, can I put those songs on my iPod?
    If you connect your iPod to her computer, yes. Tracks download only to the computer from which they're purchased, regardless of which iTunes Store account is used for the purchase. Or you could copy the tracks from her computer to yours and then authorize your computer to her iTunes Store account. But that's sort of defeating the original purpose, it would seem to me.
    is it better to buy music through Amazon downloads and/or actually purchasing CDs to avoid the security features iTunes puts on its music?
    That's certainly an option. If it's an entire album I want, I buy CDs. That way I can import them at the quality I want and to whichever of my systems I want. Amazon or one of the other download stores that offer tracks as MP3 are also an option, though for me download stores are best when you just want a couple of tracks off a given CD.

  • How to reference a custom property in a vo transient attribute expr + bug

    Hi all
    I have created a transient attribute with an expression that evaluate null content to replace it by a appropriate text.
    <ViewAttribute
        Name="DescriptionUI"
        IsUpdateable="false"
        IsSelected="false"
        IsPersistent="false"
        PrecisionRule="true"
        Type="java.lang.String"
        ColumnType="VARCHAR2"
        AliasName="VIEW_ATTR"
        SQLType="VARCHAR">
        <TransientExpression><![CDATA[((Description == null) ? 'Pas de description' : Description)]]></TransientExpression>
      </ViewAttribute>I have defined a custom property for that attribute that contains the message text. I was surprised to see that the custom property was not associate with the attribute in the source file. Don't understand where the association is done
        <Properties>
          <CustomProperties>
            <Property
              Name="flex.tree.noLabel"
              ResId="flex.noDescription"/>
          </CustomProperties>
        </Properties>I had some difficulties to use the custom property editor. When creating a new related one by using an existing resource the property column value is not changed and the content 'Property' is generated. Because no relationships exists between attribute and the property, the entry is lost in the table referring custom property list for the attribute when your come back into the view object or if you save an another entry in an another attribute.
    So my first question ? Is the attribute editing part the right part to define custom property pairs if they are not related to attributes ? is it a bug ?
    My second question is : is it possible to evaluate the bundle in the expression (replacing the literal 'Pas de description' by an expression) ? What is the expression to use ? Where it is described to do such things in the help or in the documentation ?
    Thank you

    This is wrong
    ((Label == null) ? {FlexParameterModelBundle['flex.tree.noLabel']} : Label)
    What is the correct syntax to refer to the project model standard bundle in the groovy expression ?
    Thank for the help !

Maybe you are looking for