Download
Desenvolver
Conta
Download
Desenvolver
Login
Forgot Account/Password
Criar Conta
Linguagem
Ajuda
Linguagem
Ajuda
×
Login
Nome de acesso
Senha
×
Forgot Account/Password
Estado tradução de Português
Category:
Software
People
PersonalForge
Magazine
Wiki
Pesquisa
OSDN
>
Pesquisar Software
>
Software Development
>
Amateras
>
Ticket List/Search
>
Tíquete #10185
Amateras
Descrição
Project Summary
Developer Dashboard
Página da Web
Developers
Image Gallery
List of RSS Feeds
Activity
Statistics
Histórico
Downloads
List of Releases
Stats
Código Fonte
Code Repository list
Subversion
Visualizar Repositório
CVS
Visualizar Repositório
Tíquete
Ticket List
Milestone List
Type List
Lista de componentes
List of frequently used tickets/RSS
Submit New Ticket
Documents
FrontPage
Title index
Recent changes
Communication
Fóruns
List of Forums
English (1295)
Japanese (319)
Mailing Lists
list of ML
News
Tíquete #10185
Ticket List
Submit New Ticket
RSS
[EHE]ルートが削除されるとtaglibの補完がErrorになり、かつ回復困難
:
2007-03-29 12:54
Última Atualização:
2008-11-30 00:05
monitor
ON
OFF
Relator:
kawaz
Dono:
takezoe
Tipo:
Bugs
Estado:
Aberto [Owner assigned]
Componente:
EclipseHTMLEditor
Marcos:
(Nenhum)
Prioridade:
5 - Medium
Gravidade:
5 - Medium
Resolução:
Nenhum
Arquivo:
Nenhum
Details
ant や maven 等のビルドツールを使って開発する場合、WEB-
INF/lib 以外の場所に jar ファイルがあり、
war にパッケージングする際に最終イメージのディレクトリ
にファイルをコピーするということが良くあります。
例えばディレクトリ構成が以下のようになっているとします。
src/
java/ ←Javaのソースファイル
webapp/
WEB-INF/
lib/ ←ここにはjarは無い
web.xml
:
target/ ←ビルドを実行すると作成される
classes/
webapp/ ←ビルドによりsrc/webappからコピーされる
WEB-INF/
lib/ ←依存jarもコピーされている
web.xml
この場合、
Amaterasのrootを/src/webappに設定しているとjarが無いた
めtaglibの補完や検証が出来ません。なので必然的に
/target/webappをルートに設定することになります。
Amaterasのrootを/target/webappに設定すればjarが見つけら
れるのでtaglibの補完が出来るようになります。
しかし、target は一度ビルドしないと存在しないし、仮に一
度ビルドしてあっても clean(削除) されることがあります。
そうするとEHEが/target/webappを見ている場合は,
clean後にいきなりtaglibの補完が出来なくなり、全てのタグ
がError表示になってしまいます。
しかも困ったことにAmaterasはrootが無くなったことはすぐ
に検出してエラーを表示するくせに、再度ビルドを実行して
既にファイルが出来たとしてもそれを検出してくれません。
一度Errorに陥るとjspファイルを開き直してもプロジェクト
をRefreshしてもEclipseを再起動しても直らないことが多い
です。
そして色々試行錯誤していると、何かの拍子に回復すること
もあります、でも何をトリガーにして回復するのか分かって
いません。
しかし苦労して回復してもcleanを実行するとまたエラーに
なって、これの繰り返しです…。
この問題の対応策として以下の2つが思いつきます。
1つは、Errorの状態に陥ってもrootが復活すればそれを速や
かに検出して補完が出来る状態に回復するようにする。
もう一つはtaglibの検索をWEB-INF/lib以外にEclipseの
JavaBuildPathからも探すようにする。その場合rootの設定は
src/webappにしておけばrootが削除されることが無いので問
題にならないと思われます。
しかし後者案はweb.xmlやtldファイル等もビルドツールで最
後に作成するようなケースではやはり同じような問題になり
場当たり的な対応であるというのは否めません。
cleanされてrootが存在しない状態で補完して欲しいとは言い
ません。前者の案のようにrootが復活したら速やかにError状
態の回復が出来るというのが望ましいと思います。
以上です。よろしくお願いいたします。
Ticket History (1/1 Histories)
2008-11-30 00:05
Updated by:
takezoe
Componente
Update from
(Nenhum)
to
EclipseHTMLEditor
Attachment File List (
0
)
Attachment File List
No attachments
Editar
Please login to add comment to this ticket »
Login
INF/lib 以外の場所に jar ファイルがあり、
war にパッケージングする際に最終イメージのディレクトリ
にファイルをコピーするということが良くあります。
例えばディレクトリ構成が以下のようになっているとします。
src/
java/ ←Javaのソースファイル
webapp/
WEB-INF/
lib/ ←ここにはjarは無い
web.xml
:
target/ ←ビルドを実行すると作成される
classes/
webapp/ ←ビルドによりsrc/webappからコピーされる
WEB-INF/
lib/ ←依存jarもコピーされている
web.xml
この場合、
Amaterasのrootを/src/webappに設定しているとjarが無いた
めtaglibの補完や検証が出来ません。なので必然的に
/target/webappをルートに設定することになります。
Amaterasのrootを/target/webappに設定すればjarが見つけら
れるのでtaglibの補完が出来るようになります。
しかし、target は一度ビルドしないと存在しないし、仮に一
度ビルドしてあっても clean(削除) されることがあります。
そうするとEHEが/target/webappを見ている場合は,
clean後にいきなりtaglibの補完が出来なくなり、全てのタグ
がError表示になってしまいます。
しかも困ったことにAmaterasはrootが無くなったことはすぐ
に検出してエラーを表示するくせに、再度ビルドを実行して
既にファイルが出来たとしてもそれを検出してくれません。
一度Errorに陥るとjspファイルを開き直してもプロジェクト
をRefreshしてもEclipseを再起動しても直らないことが多い
です。
そして色々試行錯誤していると、何かの拍子に回復すること
もあります、でも何をトリガーにして回復するのか分かって
いません。
しかし苦労して回復してもcleanを実行するとまたエラーに
なって、これの繰り返しです…。
この問題の対応策として以下の2つが思いつきます。
1つは、Errorの状態に陥ってもrootが復活すればそれを速や
かに検出して補完が出来る状態に回復するようにする。
もう一つはtaglibの検索をWEB-INF/lib以外にEclipseの
JavaBuildPathからも探すようにする。その場合rootの設定は
src/webappにしておけばrootが削除されることが無いので問
題にならないと思われます。
しかし後者案はweb.xmlやtldファイル等もビルドツールで最
後に作成するようなケースではやはり同じような問題になり
場当たり的な対応であるというのは否めません。
cleanされてrootが存在しない状態で補完して欲しいとは言い
ません。前者の案のようにrootが復活したら速やかにError状
態の回復が出来るというのが望ましいと思います。
以上です。よろしくお願いいたします。