Struts Tip: LookupDispatchActionのボタンラベル
LookupDispatchAction では、getKeyMethodMapメソッドの中でボタンのラベルごとにmap.put(...); というラインを定義しなければならないのですが、struts-userメーリングリストの中で"新しいボタンを追加するたびにコードをいじるのは嫌だ"というコメントがありました。 その問題を解決する方法がMattさんにポストされてました。
まず、LookupMethods.propertiesというファイルを作成し、次のようなラインを作ります。
button.add=add
button.cancel=cancel
button.copy=copy
button.edit=edit
button.delete=delete
button.save=save
button.search=search
public Map getKeyMethodMap() {
Map map = new HashMap();ResourceBundle methods = ResourceBundle.getBundle("org.appfuse.webapp.action.LookupMethods");
Enumeration keys = methods.getKeys();
while (keys.hasMoreElements()) {
String key = (String) keys.nextElement();
map.put(key, methods.getString(key));
}return map;
}