在tapestry4.1中创建自己的jodo组件,运行的时候,有这样的提示,Not yet ready for use. APIs subject to change without notice不知道是什么东东,有哪位可以指教一下,代码如下
Circles.script
xml 代码
xml version="1.0"?> "-//Apache Software Foundation//Tapestry Script Specification 3.0//EN" "http://tapestry.apache.org/dtd/Script_3_0.dtd"
> <script> <body> <unique> dojo.require("dojo.gfx.*");
unique> body> script>
Circles.jwc
xml 代码
xml version="1.0" encoding="UTF-8"?> Copyright 2004, 2005, 2006 The Apache Software Foundation Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --
> "-//Apache Software Foundation//Tapestry Specification 4.0//EN" "http://tapestry.apache.org/dtd/Tapestry_4_0.dtd"
> <component-specification class=
"myComponent.Circles" allow-body=
"yes" allow-informal-parameters=
"yes"> <description> Creates a modal Circles.
description> <inject property=
"script" type=
"script" object=
"Circles.script"/> component-specification>
Circles.java
java 代码
package myComponent;
import java.util.HashMap;
import java.util.Map;
import org.apache.tapestry.IMarkupWriter;
import org.apache.tapestry.IRequestCycle;
import org.apache.tapestry.IScript;
import org.apache.tapestry.PageRenderSupport;
import org.apache.tapestry.TapestryUtils;
import org.apache.tapestry.dojo.form.IFormWidget;
import org.apache.tapestry.form.AbstractFormComponent;
public abstract class Circles
extends AbstractFormComponent
implements IFormWidget {
public abstract void setDestroy(
boolean destroy);
public abstract IScript getScript();
public abstract String getClientId();
public abstract void setClientId(String id);
public abstract boolean getDestroy();
public void renderWidget(IMarkupWriter writer, IRequestCycle cycle) { renderComponent(writer, cycle); }
protected void renderFormComponent(IMarkupWriter writer, IRequestCycle cycle) {
if(!cycle.isRewinding()) {
if (!cycle.getResponseBuilder().isDynamic() || cycle.getResponseBuilder().explicitlyContains(
this)) { setDestroy(
false); }
else setDestroy(
true); }
if (cycle.getResponseBuilder().isDynamic() && (!cycle.getResponseBuilder().explicitlyContains(
this) && !cycle.getResponseBuilder().contains(
this))) {
return; } renderFormWidget(writer, cycle); }
protected void rewindFormComponent(IMarkupWriter writer, IRequestCycle cycle) { rewindFormWidget(writer, cycle); }
protected void renderFormWidget(IMarkupWriter writer, IRequestCycle cycle) { Map parms =
new HashMap(); parms.put(
"id", getClientId()); parms.put(
"widget",
this); PageRenderSupport pageRenderSupport = TapestryUtils.getPageRenderSupport(cycle,
this); getScript().execute(
this , cycle, pageRenderSupport , parms); }
protected void rewindFormWidget(IMarkupWriter writer, IRequestCycle cycle) { } }
application文件
xml 代码
xml version="1.0"?> "-//Apache Software Foundation//Tapestry Specification 4.0//EN" "http://jakarta.apache.org/tapestry/dtd/Tapestry_4_0.dtd"
> <application name=
"workbench"> <meta key=
"org.apache.tapestry.visit-class" value=
"org.apache.tapestry.workbench.Visit"/> <meta key=
"org.apache.tapestry.template-encoding" value=
"ISO-8859-1"/> <meta key=
"org.apache.tapestry.page-class-packages" value=
"org.apache.tapestry.workbench"/> <meta key=
"org.apache.tapestry.component-class-packages" value=
"org.apache.tapestry.workbench.components"/> <library id=
"contrib" specification-path=
"classpath:/org/apache/tapestry/contrib/Contrib.library"/> <page name=
"Home" specification-path=
"/WEB-INF/home/Home.page"/> <page name=
"Page1" specification-path=
"/WEB-INF/pages/Page1.page"/> <component-type type=
"Circles" specification-path=
"/myComponent/Circles.jwc"/> application>
代码就是这些,如有哪位高手遇到过这个问题,希望可以帮忙一下.