Hi,
My component below is broken after I upgrade from Tap 5.1 to Tap 5.2
snapshot. In the component template FunctionInputWithSelect.tml, there is
Select component which gets all its parameters using inherit binding.
<td> <SELECT t:type="select" style="width:10em" t:id="mode"
blankOption="never"
model="model" value="value"
onchange="javascript:this.form.submit();">
</SELECT>
In FunctionInputWithSelect.java,
public class FunctionInputWithSelect {
@Parameter(defaultPrefix=BindingConstants.PROP, required=true)
@Property
private String function;
@Parameter(defaultPrefix=BindingConstants.PROP, required=true)
private SelectModel model;
@Parameter(defaultPrefix=BindingConstants.PROP, required=true)
private ValueEncoder encoder;
@Parameter(required=false,defaultPrefix=BindingConstants.PROP,value="literal:Compute"
)
private String buttonLabel;
@Parameter(required = true,principal=true)
private Object value;
@Component(parameters =
{ "value=inherit:value", "model=inherit:model",
"encoder=inherit:encoder" }, id="mode")
private Select select;
@Component(parameters ={ "function=inherit:function" },
id="functionInput")
private FunctionInput functionInput;
public String getButtonLabel(){
return buttonLabel;
}
}
In Tap 5.2, I get a null pointer exception.
# org.apache.tapestry5.util.EnumSelectModel.<init>(EnumSelectModel.java:50)
# org.apache.tapestry5.util.EnumSelectModel.<init>(EnumSelectModel.java:41)
# org.apache.tapestry5.corelib.components.Select.defaultModel(Select.java:254)
#
org.apache.tapestry5.corelib.components.Select$MethodAccess_defaultModel_12a5251dfd6.invoke(Select$MethodAccess_defaultModel_12a5251dfd6.java)
#
org.apache.tapestry5.internal.transform.ParameterWorker$InvokeParameterDefaultMethod.advise(ParameterWorker.java:95)
#
org.apache.tapestry5.internal.services.AbstractComponentMethodInvocation.proceed(AbstractComponentMethodInvocation.java:86)
#
org.apache.tapestry5.internal.transform.ParameterWorker$InvokeLoadOnParmeterConduit.advise(ParameterWorker.java:118)
#
org.apache.tapestry5.internal.services.AbstractComponentMethodInvocation.proceed(AbstractComponentMethodInvocation.java:86)
#
org.apache.tapestry5.internal.transform.ParameterWorker$InvokeParameterDefaultMethod.advise(ParameterWorker.java:101)
#
org.apache.tapestry5.internal.services.AbstractComponentMethodInvocation.proceed(AbstractComponentMethodInvocation.java:86)
#
org.apache.tapestry5.internal.transform.ParameterWorker$InvokeLoadOnParmeterConduit.advise(ParameterWorker.java:118)
#
org.apache.tapestry5.internal.services.AbstractComponentMethodInvocation.proceed(AbstractComponentMethodInvocation.java:86)
#
org.apache.tapestry5.internal.transform.ParameterWorker$InvokeLoadOnParmeterConduit.advise(ParameterWorker.java:118)
#
org.apache.tapestry5.internal.services.AbstractComponentMethodInvocation.proceed(AbstractComponentMethodInvocation.java:86)
#
org.apache.tapestry5.internal.transform.ParameterWorker$InvokeParameterDefaultMethod.advise(ParameterWorker.java:101)
#
org.apache.tapestry5.internal.services.AbstractComponentMethodInvocation.proceed(AbstractComponentMethodInvocation.java:86)
#
org.apache.tapestry5.internal.transform.ParameterWorker$InvokeLoadOnParmeterConduit.advise(ParameterWorker.java:118)
#
org.apache.tapestry5.internal.services.AbstractComponentMethodInvocation.proceed(AbstractComponentMethodInvocation.java:86)
#
org.apache.tapestry5.corelib.components.Select.containingPageDidLoad(Select.java)
#
org.apache.tapestry5.internal.structure.ComponentPageElementImpl$4.run(ComponentPageElementImpl.java:120)
#
org.apache.tapestry5.internal.structure.ComponentPageElementImpl.invoke(ComponentPageElementImpl.java:985)
#
org.apache.tapestry5.internal.structure.ComponentPageElementImpl.containingPageDidLoad(ComponentPageElementImpl.java:829)
# org.apache.tapestry5.internal.structure.PageImpl.loaded(PageImpl.java:171)
#
org.apache.tapestry5.internal.pageload.PageLoaderImpl$3.invoke(PageLoaderImpl.java:190)
#
org.apache.tapestry5.internal.pageload.PageLoaderImpl$3.invoke(PageLoaderImpl.java:174)
#
org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:65)
#
org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68)
# org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1057)
Thanks in advance for any assistance !
Shing
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]