下载
开发软件
账户
下载
开发软件
登录
我忘记用户名和密码了
创建帐户
语言
帮助
语言
帮助
×
登录
登录名
密码
×
我忘记用户名和密码了
简体中文翻译状态
类别:
软件
用户
PersonalForge
Magazine
Wiki
搜索
OSDN
>
浏览软件
>
System
>
Seasar
>
Ticket List/Search
>
任务单 #4963
Seasar
描述
项目概述
开发人员仪表板
项目的网页
开发人员
Image Gallery
List of RSS Feeds
Activity
统计
历史
下载
List of Releases
统计
源代码
Code Repository list
CVS
查看仓库
任务单
Ticket List
里程碑列表
Type List
组件列表
List of frequently used tickets/RSS
Submit New Ticket
文档
沟通
论坛
List of Forums
Mailing Lists
list of ML
新闻
任务单 #4963
Ticket List
Submit New Ticket
RSS
2つ以上のincludeを認識しない
开放日期:
2004-09-06 17:24
最后更新:
2004-09-14 07:46
monitor
ON
OFF
报告人:
arakane
属主:
masataka
类型:
Kijimunaバグ&要望
状态:
关闭
组件:
(无)
里程碑:
(无)
优先:
5 - Medium
严重性:
5 - Medium
处理结果:
Fixed
文件:
无
Details
回复
1つのdiconファイルにおいて、2つ以上の別diconファイルを
includeしたばあい、2つ目以降のdiconファイルの内容を認識
できていないようで、以下のエラーが出ます。
[component] コンストラクター
test.kijimuna.TestExec#TestExec(test.kijimuna.TestAImpl,
null)が見つかりません
以下の構成で検証しました。
// test.kijimuna.TestA
public interface TestA {
void execute();
}
// test.kijimuna.TestAImpl
public class TestAImpl implements TestA {
private String param;
public TestAImpl( String param) {
this.param = param;
}
public void execute() {
System.out.println( param);
}
}
// test.kijimuna.TestB
public interface TestB {
void execute();
}
// test.kijimuna.TestBImpl
package test.kijimuna;
public class TestBImpl implements TestB {
private String param;
public TestBImpl( String param) {
this.param = param;
}
public void execute() {
System.out.println( param);
}
}
// test.kijimuna.TestExec
public class TestExec {
private static final String
PATH="test/kijimuna/TestExec.dicon";
private TestA testA;
private TestB testB;
public TestExec( TestA testA, TestB testB) {
this.testA = testA;
this.testB = testB;
}
public void execute() {
testA.execute();
testB.execute();
}
public static void main( String[] args) {
S2Container container =
S2ContainerFactory.create( PATH);
container.init();
try {
TestExec exec =
(TestExec)container.getComponent( TestExec.class);
exec.execute();
} finally {
container.destroy();
}
}
}
// test/kijimuna/TestA.dicon
<components>
<component name="testA"
class="test.kijimuna.TestAImpl">
<arg>"HogeHoge"</arg>
</component>
</components>
// test/kijimuna/TestB.dicon
<components>
<component name="testB"
class="test.kijimuna.TestBImpl">
<arg>"FugaFuga"</arg>
</component>
</components>
// test/kijimuna/TestExec.dicon
<components>
<include path="test/kijimuna/TestA.dicon"/>
<include path="test/kijimuna/TestB.dicon"/>
<component name="testExec"
class="test.kijimuna.TestExec">
<arg>testA</arg>
<arg>testB</arg>
</component>
</components>
testBを見つけることができず、エラーとなります。
kijimuna20040830fix および、kijimuna20040716 で確認しま
した。
任务单历史 (3/6 Histories)
Show older Histories
2004-09-10 21:30
Updated by:
masataka
评论
回复
Logged In: YES
user_id=9870
core-0.6.0で修正できたかとおもいます。確認ください。
2004-09-12 12:57
Updated by:
arakane
评论
回复
Logged In: YES
user_id=10192
org.seasar.kijimuna20040911 にて確認しましたところ、次のよう
な症状となりました。
(1) 0.5.9 上でエラーとなっていたdiconファイルは、0.6.0fixを
導入後クリーンアップを行っても、同じエラーとなる。
(2) (1)の状態で、エラーとなっているコンポーネントの定義を削
除しても、エラーは消えない。
(3) エラーとなっているdiconファイルを削除後、同じ内容で作成
しなおせば、エラーは消える。
いずれも検証した構成は、最初に報告したときと同じです。
2004-09-12 13:03
Updated by:
arakane
评论
回复
Logged In: YES
user_id=10192
追記です。
Eclipse上で、当該diconファイルを削除後、ローカルヒストリーか
ら復元した場合にも、エラーはなくなります。
2004-09-13 22:14
Updated by:
masataka
评论
回复
Logged In: YES
user_id=9870
>(1) 0.5.9 上でエラーとなっていたdiconファイルは、
> 0.6.0fixを導入後クリーンアップを行っても、同じ
> エラーとなる。
>(2) (1)の状態で、エラーとなっているコンポーネント
> の定義を削
> 除しても、エラーは消えない。
これは、0.5.9と0.6.0の間で、エラーマーカーIDが変わったため
に発生した問題です。まず、0.5.9でプラグイン適用したプロジェ
クトは、0.5.9にてプラグイン解除(UIの「S2プロジェクト」チェ
ックボックスをoffにする)したのちに、0.6.0以降を導入しない
といけなかったのです。0.6.1時にはバージョンアップ時の混乱を
さけるために、冗長になっても、0.5.9以前でのエラーマーカーを
消すようにします。
>(3) エラーとなっているdiconファイルを削除後、
> 同じ内容で作成しなおせば、エラーは消える。
これが、0.6.0でFIXした内容です。今後は複数includeが記述され
たdiconファイルにて、同様の名前解決問題は修正できたと思いま
す。
2004-09-13 22:27
Updated by:
masataka
评论
回复
Logged In: YES
user_id=9870
さらに、念のため、0.5.9以前からバリデーションしていたプロジ
ェクトについては、Eclipseのメニューの[Project]-
[Properties]-[Seasar2]設定画面で「Seasar2 プロジェクト」チ
ェックボックスを一度offにして「OK」クリック後に、再度同じ画
面でチェックボックスonおよび「OK」という作業を行ってくださ
い。
2004-09-14 07:46
Updated by:
arakane
Ticket Close date
is changed to
2004-09-14 07:46
处理结果
Update from
无
to
Fixed
状态
Update from
开启
to
关闭
评论
回复
Logged In: YES
user_id=10192
0.6.1で、正常な動作を確認しました。
ありがとうございました。
Attachment File List (
0
)
Attachment File List
No attachments
编辑
Add Comment
You are not logged in.
I you are not logged in, your comment will be treated as an anonymous post. »
登录名
Add Comment
预览
Submit
includeしたばあい、2つ目以降のdiconファイルの内容を認識
できていないようで、以下のエラーが出ます。
[component] コンストラクター
test.kijimuna.TestExec#TestExec(test.kijimuna.TestAImpl,
null)が見つかりません
以下の構成で検証しました。
// test.kijimuna.TestA
public interface TestA {
void execute();
}
// test.kijimuna.TestAImpl
public class TestAImpl implements TestA {
private String param;
public TestAImpl( String param) {
this.param = param;
}
public void execute() {
System.out.println( param);
}
}
// test.kijimuna.TestB
public interface TestB {
void execute();
}
// test.kijimuna.TestBImpl
package test.kijimuna;
public class TestBImpl implements TestB {
private String param;
public TestBImpl( String param) {
this.param = param;
}
public void execute() {
System.out.println( param);
}
}
// test.kijimuna.TestExec
public class TestExec {
private static final String
PATH="test/kijimuna/TestExec.dicon";
private TestA testA;
private TestB testB;
public TestExec( TestA testA, TestB testB) {
this.testA = testA;
this.testB = testB;
}
public void execute() {
testA.execute();
testB.execute();
}
public static void main( String[] args) {
S2Container container =
S2ContainerFactory.create( PATH);
container.init();
try {
TestExec exec =
(TestExec)container.getComponent( TestExec.class);
exec.execute();
} finally {
container.destroy();
}
}
}
// test/kijimuna/TestA.dicon
<components>
<component name="testA"
class="test.kijimuna.TestAImpl">
<arg>"HogeHoge"</arg>
</component>
</components>
// test/kijimuna/TestB.dicon
<components>
<component name="testB"
class="test.kijimuna.TestBImpl">
<arg>"FugaFuga"</arg>
</component>
</components>
// test/kijimuna/TestExec.dicon
<components>
<include path="test/kijimuna/TestA.dicon"/>
<include path="test/kijimuna/TestB.dicon"/>
<component name="testExec"
class="test.kijimuna.TestExec">
<arg>testA</arg>
<arg>testB</arg>
</component>
</components>
testBを見つけることができず、エラーとなります。
kijimuna20040830fix および、kijimuna20040716 で確認しま
した。