Missing classpath resource '/dojo-0.4.3/dojo2.js'
2008年02月20日Missing classpath resource '/dojo-0.4.3/dojo2.js'
Tapestry4.1.5 bug
http://article.gmane.org/gmane.comp.jakarta.tapestry.devel/24877
https://issues.apache.org/jira/browse/TAPESTRY-2171
修改
tapestry-framework-4.1.5.jar
org.apache.tapestry.dojo.html包下ScriptIncludes.jwc文件
按照org.apache.tapestry.html.Shell.jwc的写法 使用 jsManager 控制路径
屏蔽掉
<asset name="defaultDojoSource" path="classpath:/dojo-0.4.3/dojo.js" />
<asset name="defaultDojoFormSource" path="classpath:/dojo-0.4.3/dojo2.js" />
<asset name="defaultDojoWidgetSource" path="classpath:/dojo-0.4.3/dojo3.js" />
<asset name="defaultDojoPath" path="classpath:/dojo-0.4.3/" />
<asset name="defaultTapestrySource" path="classpath:/tapestry/core.js" />
<asset name="defaultTapestryPath" path="classpath:/tapestry/" />
增加
<inject property="valueConverter" object="service:tapestry.coerce.ValueConverter" />
<inject property="pageService" object="engine-service:page" />
<inject property="applicationSpecification" object="infrastructure:applicationSpecification" />
<inject property="baseTagWriter" object="service:tapestry.url.BaseTagWriter" />
<inject property="jsManager" object="service:tapestry.js.JavascriptManager" />
修改
<parameter name="tapestrySource" default-value="asset:defaultTapestrySource">
<description>
If specified, allows for the default tapestry source included to be overriden.
</description>
</parameter>
<parameter name="tapestryPath" default-value="asset:defaultTapestryPath">
<description>
Sets the tapestry path, needed for dojo to properly detect and find tapestry js modules
when overriding the default dojo bundled with tapestry.
</description>
</parameter>
<parameter name="dojoSource" default-value="asset:defaultDojoSource">
<description>
If specified, allows for the default dojo source included to be overriden.
</description>
</parameter>
<parameter name="dojoFormSource" default-value="asset:defaultDojoFormSource">
<description>
If specified, allows for the default dojo source included to be overriden.
</description>
</parameter>
<parameter name="dojoWidgetSource" default-value="asset:defaultDojoWidgetSource">
<description>
If specified, allows for the default dojo source included to be overriden.
</description>
</parameter>
<parameter name="dojoPath" default-value="asset:defaultDojoPath">
<description>
Specifies the default path to the root dojo folder, not the dojo.js file itself. This is
used by the djConfig.baseRelativePath javascript configuration variable in dojo.
</description>
</parameter>
变为
<parameter name="tapestrySource" default-value="ognl:jsManager.tapestryAsset">
<description>
If specified, allows for the default tapestry source included to be overriden.
</description>
</parameter>
<parameter name="tapestryPath" default-value="ognl:jsManager.tapestryPath">
<description>
Sets the tapestry path, needed for dojo to properly detect and find tapestry js modules
when overriding the default dojo bundled with tapestry.
</description>
</parameter>
<parameter name="dojoSource" default-value="ognl:jsManager.firstAsset">
<description>
If specified, allows for the default dojo source included to be overriden.
</description>
</parameter>
<parameter name="dojoFormSource" default-value="ognl:jsManager.firstFormAsset">
<description>
If specified, allows for the default dojo source included to be overriden.
</description>
</parameter>
<parameter name="dojoWidgetSource" default-value="ognl:jsManager.firstWidgetAsset">
<description>
If specified, allows for the default dojo source included to be overriden.
</description>
</parameter>
<parameter name="dojoPath" default-value="ognl:jsManager.path">
<description>
Specifies the default path to the root dojo folder, not the dojo.js file itself. This is
used by the djConfig.baseRelativePath javascript configuration variable in dojo.
</description>
</parameter>
