[YMIR-281] [ymir-extension] SystemNotificationにHTML編集なしに行けるように Created: 2009-01-19  Updated: 2009-03-06  Resolved: 2009-03-06

Status: Closed
Project: Ymir
Component/s: ymir-extension
Affects Version/s: 1.0.0
Fix Version/s: 1.0.2

Type: Improvement Priority: Major
Reporter: jflute Assignee: skirnir
Resolution: Fixed Votes: 0
Labels: None


 Description   

【概要】
HTMLは修正しない状態でSystemNotificationに行って、
自動生成をし直したいことがあるため。

現状、二つのやり方がある:

1. HTMLを意味無し修正して更新日時を更新
これはバグを生む可能性があり安全でない。
(意味無し修正時にバグる可能性有り)

2. ダブルクリックでHTML直さずOKする
HTMLファイルの更新日時が更新されるため、
いざEclipseで直そうとすると「同期がとれてない」メッセージが出て、
面倒であると同時にディベロッパーをとても不安にさせる。
(さっきの修正はがどうなったんだ?!)

できれば、直接SystemNotificationに行きたい。

【環境】
Mac OS X
Safari
Java 5.0

【解決案】
「TO SYSTEM CONSOLEボタン」みたいに
普段隠れて、マウスオーバーすると「TO SYSTEM NOTIFICATION」が
出てきて、クリックすると行けるようになるとか。



 Comments   
Comment by skirnir [ 2009-03-06 ]

完了とします。

Comment by jflute [ 2009-03-06 ]

確認しました。
これで課題終了という感じです。

Comment by skirnir [ 2009-03-06 ]

IE6でもin-place editorが使えるようにしました。またsystem consoleボタンとupdate classesボタンが表示されるようにしました。

Comment by jflute [ 2009-03-06 ]

最新のSNAPSHOTでtryToUpdateClassesWhenTemplateModifiedをtrueでもfalseでも
UPDATE CLASSESボタンが動作することを確認しましたー。ありがとうございます。

Comment by skirnir [ 2009-03-06 ]

すいません、extension.sourceCreator.tryToUpdateClassesWhenTemplateModified=trueの時に動作に問題があることが分かりました。対処しました。

あとはIEだとボタンが出ない件などについて引き続き対処します。

Comment by jflute [ 2009-03-06 ]

app.propertiesで
extension.sourceCreator.tryToUpdateClassesWhenTemplateModified=false
と設定するとうまく動くようです。
このプロパティが存在しない or trueの場合はUPDATE CLASSESボタンが動きません。

Comment by skirnir [ 2009-03-06 ]

WinXPのFirefox3、IE6で問題なく動作しました。うーん不思議です。

Comment by skirnir [ 2009-02-13 ]

調査します。

Comment by jflute [ 2009-02-13 ]

WinXP上のIE6でも同じ現象が発生しました。
WinXP上のFireFox3でも同じ現象が発生しました。
(同画面がただリロードされるだけ)

そのときのGetパラメータです(Safariでも同様)。

  [param] __ymir__method=GET
  [param] __ymir__task=updateClasses
Comment by jflute [ 2009-02-07 ]

ありがとうございます。

試したところ、UPDATE CLASSESボタンを押しても、
その画面がリロードされるだけで、自動生成画面には遷移しませんでした。
ログを見ると、その画面のQueryString無しで、Getが呼び出されています。
試した環境は以下です。

【環境】
Mac OS X
Safari
Java 5.0

後で、WindowsでIEとかFirefoxでどうなるか確認してみますね。
取り急ぎ報告でした。

Comment by skirnir [ 2009-02-07 ]

対処しました(r2772)。

SYSTEM CONSOLEボタンの下にUPDATE CLASSESボタンを追加しました。これを押下することでそのページに関して自動生成を行なうことができます。

まず、app.diconに
extension.sourceCreator.tryToUpdateClassesWhenTemplateModified=false
という設定を追加することで、テンプレートの更新を自動生成のトリガとしないようになります。複数人で開発するプロジェクトなどでは、テンプレートをsvn updateする度に更新日時が新しくなり、そのため最初のページアクセスで自動生成画面が表示されてしまい煩雑でしたが、この設定を追加することでテンプレートの更新日時がチェックされなくなります。複数人での開発時には、この設定を追加した上でUPDATE CLASSESボタンを押して、必要な時に明示的に自動生成ロジックを呼ぶというスタイルが開発しやすいかもしれません。

Comment by jflute [ 2009-01-21 ]

ダブルクリックして、OKして、SystemNotificationに行って、
「今回はスキップ」をしてもHTMLが同期されていることを確認しました。

Comment by skirnir [ 2009-01-21 ]

すいません、「2. ダブルクリックでHTML直さずOKする」はSynchronizerと連携していてもNGでした。

対処してSNAPSHOTをリリースしました(r2694)。お試し下さい。

Comment by jflute [ 2009-01-21 ]

> ダブルクリックの「HTMLファイル編集画面」をOFFにするモードが欲しいかもと思ったからです。
こちら機能は既にあるようですね。失礼しました。
http://ymir.seasar.org/docs/1.0.x/ref/appProperties

Comment by jflute [ 2009-01-21 ]

> いざEclipseで直そうとすると「同期がとれてない」メッセージが出て、
> 面倒であると同時にディベロッパーをとても不安にさせる。

これは、Syncronizerがちゃんと発動していれば大丈夫なはずということで
撤回させてください。ただ、SystemNotificationに行く手段として、
ダブルクリックの「HTMLファイル編集画面」は別にしたほうがいいかなと考えます。

というのは、別件の課題で挙げさせていただこうと思っていましたが、
ダブルクリックの「HTMLファイル編集画面」をOFFにするモードが欲しいかもと思ったからです。
やはり今の「HTMLファイル編集画面」だとHTMLを編集するにはあまり適した環境でないため、
実際の開発ではこの機能をOFFにしたいことがあると考えました。
(もしくは、ダブルクリックではなく明示的にボタンで行くなど。
ダブルクリックで簡単に編集に行ってしまうのも煩わしさを感じたためです)

Generated at Fri Apr 19 23:21:23 JST 2024 using Jira 9.15.0#9150000-sha1:9ead8528714127d8cfabf2446010d7e62c0a195c.