Thanks - subclasses are now working:-)
Mark

On 3 Jan 2010, at 03:08, Chuck Hill wrote:

> 
> On Jan 2, 2010, at 6:52 PM, Mark Woollard wrote:
> 
>> Thanks for the input - a couple of questions on this.
>> 
>> 1) Can't find ResourceManagerAdditions - what do I need to add?
> 
> This is from the GVC Frameworks 
> (http://www.global-village.net/chill/gvc_frameworks).  File attached.
> <ResourceManagerAdditions.java>
> 
> 
> 
>> 2) Although not relevant for what I want to do, the frameworkName parameter 
>> isn't used.
> 
> Use null, that is the WO standard for things in the Application bundle.
> 
> 
> Chuck
> 
> 
>> On 3 Jan 2010, at 02:24, Chuck Hill wrote:
>> 
>>> Hi Mark,
>>> 
>>> This not part of WO, possibly due to concerns about efficiency and 
>>> optimization (see JavaDoc below).  You can add a method to your component 
>>> (or better, to a custom super class) to achieve this:
>>> 
>>>  /**
>>>   * Allows a component to "inherit" the template (.html and .wod files) 
>>> from another component.
>>>   * <p>Usage:</p>
>>>   * <pre>
>>>   * public WOElement template() {
>>>   *     return inheritTemplateFrom("AddAddress", "CoreUI");
>>>   * }
>>>   * </pre>
>>>   * This very simple implementation does have some limitations:
>>>   * <ol>
>>>   * <li>It can't he used to inherit the template of another component 
>>> inheriting a template.</li>
>>>   * <li>It can't handle having two components with the same name in 
>>> different packages</li>
>>>   * <li>It does not use WO template caching</li>
>>>   * </ol>
>>>   *
>>>   * @see com.webobjects.appserver.WOComponent#template()
>>>   *
>>>   * @param componentName the name of the component whose template will be 
>>> inherited
>>>   * @param frameworkName name of the framework the component is in, or null 
>>> if in the application
>>>   * @return the template form the indicated component
>>>   */
>>>  public WOElement inheritTemplateFrom(String componentName, String 
>>> frameworkName)
>>>  {
>>>      String componentPath = componentName + ".wo/" + componentName + ".";
>>>      String htmlString = 
>>> ResourceManagerAdditions.stringFromResource(componentPath + "html", null, 
>>> session().languages());
>>>      String wodString = 
>>> ResourceManagerAdditions.stringFromResource(componentPath + "wod", null, 
>>> session().languages());
>>>      return WOComponent.templateWithHTMLString(htmlString, wodString, 
>>> session().languages());
>>>  }
>>> 
>>> 
>>> Enjoy!
>>> 
>>> 
>>> Chuck
>>> 
>>> 
>>> On Jan 2, 2010, at 6:20 PM, Mark Woollard wrote:
>>> 
>>>> Maybe expanding will make things clearer...
>>>> 
>>>> There is a base component FieldEditor which does in-place editing using 
>>>> the AjaxInPlace component + 2 ERXWOTemplate instances for the edit and 
>>>> view modes. I then am wanting to derive from this to create 
>>>> StringFieldEditor / IntegerFieldEditor / etc that specialize the java to 
>>>> provide view and edit values in different ways as required. The html in 
>>>> FieldEditor component doesn't need to change, and it doesn't make sense to 
>>>> me to have multiple copies in the derived classes. What I'd like to happen 
>>>> is the base class html be used and the overridden getter methods in the 
>>>> derived java class provide the data for display. Is this an approach that 
>>>> applicable to WO? If not how would this be approached to limit duplication 
>>>> of code / html?
>>>> 
>>>> Thanks
>>>> Mark
>>>> 
>>>> 
>>>> On 3 Jan 2010, at 02:04, Andrew Lindesay wrote:
>>>> 
>>>>> Hi Mark;
>>>>> 
>>>>> If I understand you correctly, I would typically create smaller re-usable 
>>>>> components to put into two different larger components.
>>>>> 
>>>>> cheers.
>>>>> 
>>>>>> I have a component (java/html/api/woo/wod) and want to create a derived 
>>>>>> component that specialises some of the java functionality, but doesn't 
>>>>>> need to modify the html of the base component. I can't figure out how to 
>>>>>> get the derived component to return the base class html since the 
>>>>>> derived classes just extend the java class.
>>>>> 
>>>>> ___
>>>>> Andrew Lindesay
>>>>> www.lindesay.co.nz
>>>>> 
>>>> 
>>>> _______________________________________________
>>>> Do not post admin requests to the list. They will be ignored.
>>>> Webobjects-dev mailing list      ([email protected])
>>>> Help/Unsubscribe/Update your Subscription:
>>>> http://lists.apple.com/mailman/options/webobjects-dev/chill%40global-village.net
>>>> 
>>>> This email sent to [email protected]
>>> 
>>> -- 
>>> Chuck Hill             Senior Consultant / VP Development
>>> 
>>> Practical WebObjects - for developers who want to increase their overall 
>>> knowledge of WebObjects or who are trying to solve specific problems.
>>> http://www.global-village.net/products/practical_webobjects
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>> 
> 
> -- 
> Chuck Hill             Senior Consultant / VP Development
> 
> Practical WebObjects - for developers who want to increase their overall 
> knowledge of WebObjects or who are trying to solve specific problems.
> http://www.global-village.net/products/practical_webobjects
> 
> 
> 
> 
> 
> 
> 

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to