diff --git a/src/main/java/org/codelibs/fess/app/service/KeyMatchService.java b/src/main/java/org/codelibs/fess/app/service/KeyMatchService.java index da0d4c032..ecdc8e477 100644 --- a/src/main/java/org/codelibs/fess/app/service/KeyMatchService.java +++ b/src/main/java/org/codelibs/fess/app/service/KeyMatchService.java @@ -29,6 +29,7 @@ import org.codelibs.fess.es.cbean.KeyMatchCB; import org.codelibs.fess.es.exbhv.KeyMatchBhv; import org.codelibs.fess.es.exentity.KeyMatch; import org.dbflute.cbean.result.PagingResultBean; +import org.dbflute.optional.OptionalEntity; public class KeyMatchService implements Serializable { @@ -57,17 +58,8 @@ public class KeyMatchService implements Serializable { return keyMatchList; } - public KeyMatch getKeyMatch(final Map keys) { - final KeyMatch keyMatch = keyMatchBhv.selectEntity(cb -> { - cb.query().docMeta().setId_Equal(keys.get("id")); - setupEntityCondition(cb, keys); - }).orElse(null);//TODO - if (keyMatch == null) { - // TODO exception? - return null; - } - - return keyMatch; + public OptionalEntity getKeyMatch(final String id){ + return keyMatchBhv.selectByPK(id); } public void store(final KeyMatch keyMatch) { diff --git a/src/main/java/org/codelibs/fess/app/web/admin/keymatch/AdminKeymatchAction.java b/src/main/java/org/codelibs/fess/app/web/admin/keymatch/AdminKeymatchAction.java index 9369d6e5b..30a965aa0 100644 --- a/src/main/java/org/codelibs/fess/app/web/admin/keymatch/AdminKeymatchAction.java +++ b/src/main/java/org/codelibs/fess/app/web/admin/keymatch/AdminKeymatchAction.java @@ -16,9 +16,6 @@ package org.codelibs.fess.app.web.admin.keymatch; -import java.util.HashMap; -import java.util.Map; - import javax.annotation.Resource; import org.codelibs.fess.Constants; @@ -29,7 +26,7 @@ import org.codelibs.fess.app.web.CrudMode; import org.codelibs.fess.app.web.base.FessAdminAction; import org.codelibs.fess.es.exentity.KeyMatch; import org.codelibs.fess.helper.SystemHelper; -import org.codelibs.fess.util.ComponentUtil; +import org.dbflute.optional.OptionalEntity; import org.lastaflute.web.Execute; import org.lastaflute.web.callback.ActionRuntime; import org.lastaflute.web.response.HtmlResponse; @@ -65,14 +62,14 @@ public class AdminKeymatchAction extends FessAdminAction { // Search Execute // ============== @Execute - public HtmlResponse index(final KeyMatchSearchForm form) { + public HtmlResponse index(final SearchForm form) { return asHtml(path_AdminKeymatch_IndexJsp).renderWith(data -> { searchPaging(data, form); }); } @Execute - public HtmlResponse list(final Integer pageNumber, final KeyMatchSearchForm form) { + public HtmlResponse list(final Integer pageNumber, final SearchForm form) { keyMatchPager.setCurrentPageNumber(pageNumber); return asHtml(path_AdminKeymatch_IndexJsp).renderWith(data -> { searchPaging(data, form); @@ -80,15 +77,15 @@ public class AdminKeymatchAction extends FessAdminAction { } @Execute - public HtmlResponse search(final KeyMatchSearchForm form) { - copyBeanToBean(form.searchParams, keyMatchPager, op -> op.exclude(Constants.PAGER_CONVERSION_RULE)); + public HtmlResponse search(final SearchForm form) { + copyBeanToBean(form, keyMatchPager, op -> op.exclude(Constants.PAGER_CONVERSION_RULE)); return asHtml(path_AdminKeymatch_IndexJsp).renderWith(data -> { searchPaging(data, form); }); } @Execute - public HtmlResponse reset(final KeyMatchSearchForm form) { + public HtmlResponse reset(final SearchForm form) { keyMatchPager.clear(); return asHtml(path_AdminKeymatch_IndexJsp).renderWith(data -> { searchPaging(data, form); @@ -96,17 +93,17 @@ public class AdminKeymatchAction extends FessAdminAction { } @Execute - public HtmlResponse back(final KeyMatchSearchForm form) { + public HtmlResponse back(final SearchForm form) { return asHtml(path_AdminKeymatch_IndexJsp).renderWith(data -> { searchPaging(data, form); }); } - protected void searchPaging(final RenderData data, final KeyMatchSearchForm form) { + protected void searchPaging(final RenderData data, final SearchForm form) { data.register("keyMatchItems", keyMatchService.getKeyMatchList(keyMatchPager)); // page navi // restore from pager - copyBeanToBean(keyMatchPager, form.searchParams, op -> op.exclude(Constants.PAGER_CONVERSION_RULE)); + copyBeanToBean(keyMatchPager, form, op -> op.include("id")); } // =================================================================================== @@ -115,53 +112,112 @@ public class AdminKeymatchAction extends FessAdminAction { // ----------------------------------------------------- // Entry Page // ---------- +// @Token(save = true, validate = false) +// @Execute +// public HtmlResponse createpage(final KeyMatchEditForm form) { +// form.initialize(); +// form.crudMode = CrudMode.CREATE; +// return asHtml(path_AdminKeymatch_EditJsp); +// } + @Token(save = true, validate = false) @Execute - public HtmlResponse createpage(final KeyMatchEditForm form) { - form.initialize(); - form.crudMode = CrudMode.CREATE; + public HtmlResponse createpage() { + return asHtml(path_AdminKeymatch_EditJsp).useForm(CreateForm.class, op -> { + op.setup(form -> { + form.initialize(); +// form.crudMode = CrudMode.CREATE; + }); + }); + } + +// @Token(save = true, validate = false) +// @Execute +// public HtmlResponse editpage(final int crudMode, final String id, final KeyMatchEditForm form) { +// form.crudMode = crudMode; +// form.id = id; +// verifyCrudMode(form, CrudMode.EDIT); +// loadKeyMatch(form); +// return asHtml(path_AdminKeymatch_EditJsp); +// } + + @Token(save = true, validate = false) + @Execute + public HtmlResponse editpage(final int crudMode, final String id) { + verifyCrudMode(crudMode, CrudMode.EDIT); + return asHtml(path_AdminKeymatch_EditJsp).useForm(EditForm.class, op -> { + op.setup(form -> { + keyMatchService.getKeyMatch(id).ifPresent(entity -> { + copyBeanToBean(entity, form, copyOp -> { + copyOp.excludeNull(); + }); + }).orElse(() -> { + throwValidationError(messages -> messages.addErrorsCrudCouldNotFindCrudTable(GLOBAL, id), toEditHtml()); + }); + form.crudMode = crudMode; + }); + }); + } + + @Token(save = true, validate = false) + @Execute + public HtmlResponse createagain(final CreateForm form) { + verifyCrudMode(form.crudMode, CrudMode.CREATE); + validate(form, messages -> {}, toEditHtml()); + return asHtml(path_AdminKeymatch_EditJsp); + } + + @Token(save = true, validate = false) + @Execute + public HtmlResponse editagain(final EditForm form) { + verifyCrudMode(form.crudMode, CrudMode.EDIT); + validate(form, messages -> {}, toEditHtml()); return asHtml(path_AdminKeymatch_EditJsp); } @Token(save = true, validate = false) @Execute - public HtmlResponse editpage(final int crudMode, final String id, final KeyMatchEditForm form) { - form.crudMode = crudMode; - form.id = id; - verifyCrudMode(form, CrudMode.EDIT); - loadKeyMatch(form); + public HtmlResponse editfromconfirm(final EditForm form) { + validate(form, messages -> {}, toEditHtml()); + form.crudMode = CrudMode.EDIT; + String id = form.id; + keyMatchService.getKeyMatch(id).ifPresent(entity -> { + copyBeanToBean(entity, form, op -> {}); + }).orElse(() -> { + throwValidationError(messages -> messages.addErrorsCrudCouldNotFindCrudTable(GLOBAL, id), toEditHtml()); + }); return asHtml(path_AdminKeymatch_EditJsp); } @Token(save = true, validate = false) @Execute - public HtmlResponse editagain(final KeyMatchEditForm form) { - return asHtml(path_AdminKeymatch_EditJsp); + public HtmlResponse deletepage(final int crudMode, final String id) { + verifyCrudMode(crudMode, CrudMode.DELETE); + return asHtml(path_AdminKeymatch_ConfirmJsp).useForm(EditForm.class, op -> { + op.setup(form -> { + keyMatchService.getKeyMatch(id).ifPresent(entity -> { + copyBeanToBean(entity, form, copyOp -> { + copyOp.excludeNull(); + }); + }).orElse(() -> { + throwValidationError(messages -> messages.addErrorsCrudCouldNotFindCrudTable(GLOBAL, id), toEditHtml()); + }); + form.crudMode = crudMode; + }); + }); } @Token(save = true, validate = false) @Execute - public HtmlResponse editfromconfirm(final KeyMatchEditForm form) { - form.crudMode = CrudMode.EDIT; - loadKeyMatch(form); - return asHtml(path_AdminKeymatch_EditJsp); - } - - @Token(save = true, validate = false) - @Execute - public HtmlResponse deletepage(final int crudMode, final String id, final KeyMatchEditForm form) { - form.crudMode = crudMode; - form.id = id; - verifyCrudMode(form, CrudMode.DELETE); - loadKeyMatch(form); - return asHtml(path_AdminKeymatch_ConfirmJsp); - } - - @Token(save = true, validate = false) - @Execute - public HtmlResponse deletefromconfirm(final KeyMatchEditForm form) { + public HtmlResponse deletefromconfirm(final EditForm form) { form.crudMode = CrudMode.DELETE; - loadKeyMatch(form); + validate(form, messages -> {}, toEditHtml()); + String id = form.id; + keyMatchService.getKeyMatch(id).ifPresent(entity -> { + copyBeanToBean(entity, form, op -> {}); + }).orElse(() -> { + throwValidationError(messages -> messages.addErrorsCrudCouldNotFindCrudTable(GLOBAL, id), toEditHtml()); + }); return asHtml(path_AdminKeymatch_ConfirmJsp); } @@ -169,25 +225,35 @@ public class AdminKeymatchAction extends FessAdminAction { // Confirm // ------- @Execute - public HtmlResponse confirmpage(final int crudMode, final String id, final KeyMatchEditForm form) { - form.crudMode = crudMode; - form.id = id; - verifyCrudMode(form, CrudMode.CONFIRM); - loadKeyMatch(form); + public HtmlResponse confirmpage(final int crudMode, final String id) { + verifyCrudMode(crudMode, CrudMode.CONFIRM); + return asHtml(path_AdminKeymatch_ConfirmJsp).useForm(EditForm.class, op -> { + op.setup(form -> { + keyMatchService.getKeyMatch(id).ifPresent(entity -> { + copyBeanToBean(entity, form, copyOp -> { + copyOp.excludeNull(); + }); + form.crudMode = crudMode; + }).orElse(() -> { + throwValidationError(messages -> messages.addErrorsCrudCouldNotFindCrudTable(GLOBAL, id), toEditHtml()); + }); + }); + }); + } + + @Token(save = false, validate = true, keep = true) + @Execute + public HtmlResponse confirmfromcreate(final CreateForm form) { + validate(form, messages -> {}, toEditHtml()); + form.crudMode = CrudMode.CREATE; return asHtml(path_AdminKeymatch_ConfirmJsp); } @Token(save = false, validate = true, keep = true) @Execute - public HtmlResponse confirmfromcreate(final KeyMatchEditForm form) { - validate(form, messages -> {}, toEditHtml()); - return asHtml(path_AdminKeymatch_ConfirmJsp); - } - - @Token(save = false, validate = true, keep = true) - @Execute - public HtmlResponse confirmfromupdate(final KeyMatchEditForm form) { + public HtmlResponse confirmfromupdate(final EditForm form) { validate(form, messages -> {}, toEditHtml()); + form.crudMode = CrudMode.EDIT; return asHtml(path_AdminKeymatch_ConfirmJsp); } @@ -196,78 +262,88 @@ public class AdminKeymatchAction extends FessAdminAction { // ------------- @Token(save = false, validate = true) @Execute - public HtmlResponse create(final KeyMatchEditForm form) { + public HtmlResponse create(final CreateForm form) { + verifyCrudMode(form.crudMode, CrudMode.CREATE); validate(form, messages -> {}, toEditHtml()); - keyMatchService.store(createKeyMatch(form)); - saveInfo(messages -> messages.addSuccessCrudCreateCrudTable(GLOBAL)); - ComponentUtil.getKeyMatchHelper().update(); + createKeyMatch(form).ifPresent(entity -> { + copyBeanToBean(form, entity, op -> op.exclude(Constants.COMMON_CONVERSION_RULE)); + keyMatchService.store(entity); + saveInfo(messages -> messages.addSuccessCrudCreateCrudTable(GLOBAL)); + }).orElse(() -> { + throwValidationError(messages -> messages.addErrorsCrudFailedToCreateCrudTable(GLOBAL), toEditHtml()); + }); return redirect(getClass()); } @Token(save = false, validate = true) @Execute - public HtmlResponse update(final KeyMatchEditForm form) { + public HtmlResponse update(final EditForm form) { + verifyCrudMode(form.crudMode, CrudMode.EDIT); validate(form, messages -> {}, toEditHtml()); - keyMatchService.store(createKeyMatch(form)); - saveInfo(messages -> messages.addSuccessCrudUpdateCrudTable(GLOBAL)); - ComponentUtil.getKeyMatchHelper().update(); + createKeyMatch(form).ifPresent(entity -> { + copyBeanToBean(form, entity, op -> op.exclude(Constants.COMMON_CONVERSION_RULE)); + keyMatchService.store(entity); + saveInfo(messages -> messages.addSuccessCrudUpdateCrudTable(GLOBAL)); + }).orElse(() -> { + throwValidationError(messages -> messages.addErrorsCrudCouldNotFindCrudTable(GLOBAL, form.id), toEditHtml()); + }); return redirect(getClass()); } @Execute - public HtmlResponse delete(final KeyMatchEditForm form) { - verifyCrudMode(form, CrudMode.DELETE); - keyMatchService.delete(getKeyMatch(form)); - saveInfo(messages -> messages.addSuccessCrudDeleteCrudTable(GLOBAL)); - ComponentUtil.getKeyMatchHelper().update(); + public HtmlResponse delete(final EditForm form) { + verifyCrudMode(form.crudMode, CrudMode.DELETE); + validate(form, messages -> {}, toEditHtml()); + String id = form.id; + keyMatchService.getKeyMatch(id).ifPresent(entity -> { + keyMatchService.delete(entity); + saveInfo(messages -> messages.addSuccessCrudDeleteCrudTable(GLOBAL)); + }).orElse(() -> { + throwValidationError(messages -> messages.addErrorsCrudCouldNotFindCrudTable(GLOBAL, id), toEditHtml()); + }); return redirect(getClass()); } // =================================================================================== // Assist Logic // ============ - protected void loadKeyMatch(final KeyMatchEditForm form) { - copyBeanToBean(getKeyMatch(form), form, op -> op.exclude("crudMode")); - } - - protected KeyMatch getKeyMatch(final KeyMatchEditForm form) { - final KeyMatch keyMatch = keyMatchService.getKeyMatch(createKeyMap(form)); - if (keyMatch == null) { - throwValidationError(messages -> messages.addErrorsCrudCouldNotFindCrudTable(GLOBAL, form.id), toEditHtml()); - } - return keyMatch; - } - - protected KeyMatch createKeyMatch(final KeyMatchEditForm form) { - KeyMatch keyMatch; + protected OptionalEntity createKeyMatch(final CreateForm form) { final String username = systemHelper.getUsername(); final long currentTime = systemHelper.getCurrentTimeAsLong(); - if (form.crudMode == CrudMode.EDIT) { - keyMatch = getKeyMatch(form); - } else { - keyMatch = new KeyMatch(); - keyMatch.setCreatedBy(username); - keyMatch.setCreatedTime(currentTime); + + switch (form.crudMode) { + case CrudMode.CREATE: + if (form instanceof CreateForm) { + KeyMatch entity = new KeyMatch(); + entity.setCreatedBy(username); + entity.setCreatedTime(currentTime); + entity.setUpdatedBy(username); + entity.setUpdatedTime(currentTime); + return OptionalEntity.of(entity); + } + break; + case CrudMode.EDIT: + if (form instanceof EditForm) { + return keyMatchService.getKeyMatch(((EditForm) form).id).map(entity -> { + entity.setUpdatedBy(username); + entity.setUpdatedTime(currentTime); + return entity; + }); + } + break; + default: + break; } - keyMatch.setUpdatedBy(username); - keyMatch.setUpdatedTime(currentTime); - copyBeanToBean(form, keyMatch, op -> op.exclude(Constants.COMMON_CONVERSION_RULE)); - return keyMatch; - } - - protected Map createKeyMap(final KeyMatchEditForm form) { - final Map keys = new HashMap(); - keys.put("id", form.id); - return keys; + return OptionalEntity.empty(); } // =================================================================================== // Small Helper // ============ - protected void verifyCrudMode(final KeyMatchEditForm form, final int expectedMode) { - if (form.crudMode != expectedMode) { + protected void verifyCrudMode(final int crudMode, final int expectedMode) { + if (crudMode != expectedMode) { throwValidationError(messages -> { - messages.addErrorsCrudInvalidMode(GLOBAL, String.valueOf(expectedMode), String.valueOf(form.crudMode)); + messages.addErrorsCrudInvalidMode(GLOBAL, String.valueOf(expectedMode), String.valueOf(crudMode)); }, toEditHtml()); } } diff --git a/src/main/java/org/codelibs/fess/app/web/admin/keymatch/CreateForm.java b/src/main/java/org/codelibs/fess/app/web/admin/keymatch/CreateForm.java new file mode 100644 index 000000000..fbe9b0176 --- /dev/null +++ b/src/main/java/org/codelibs/fess/app/web/admin/keymatch/CreateForm.java @@ -0,0 +1,70 @@ +/* + * Copyright 2009-2015 the CodeLibs Project and the Others. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, + * either express or implied. See the License for the specific language + * governing permissions and limitations under the License. + */ + +package org.codelibs.fess.app.web.admin.keymatch; + +import java.io.Serializable; + +import javax.validation.constraints.Max; +import javax.validation.constraints.Min; +import javax.validation.constraints.Size; + +import org.codelibs.fess.app.web.CrudMode; +import org.codelibs.fess.util.ComponentUtil; +import org.lastaflute.web.validation.Required; + +/** + * @author codelibs + * @author jflute + */ +public class CreateForm implements Serializable { + + private static final long serialVersionUID = 1L; + + public int crudMode; + + @Required + @Size(max = 100) + public String term; + + @Required + @Size(max = 4000) + public String query; + + @Required + @Min(value = 0) + @Max(value = 2147483647) + public String maxSize; + + @Required + public String boost; + + @Required + @Size(max = 255) + public String createdBy; + + @Required + public Long createdTime; + + public void initialize() { + crudMode = CrudMode.CREATE; + maxSize = "10"; + boost = "100.0"; + createdBy = ComponentUtil.getSystemHelper().getUsername(); + createdTime = ComponentUtil.getSystemHelper().getCurrentTimeAsLong(); + + } +} diff --git a/src/main/java/org/codelibs/fess/app/web/admin/keymatch/EditForm.java b/src/main/java/org/codelibs/fess/app/web/admin/keymatch/EditForm.java new file mode 100644 index 000000000..5e1d08a94 --- /dev/null +++ b/src/main/java/org/codelibs/fess/app/web/admin/keymatch/EditForm.java @@ -0,0 +1,43 @@ +/* + * Copyright 2009-2015 the CodeLibs Project and the Others. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, + * either express or implied. See the License for the specific language + * governing permissions and limitations under the License. + */ + +package org.codelibs.fess.app.web.admin.keymatch; + +import javax.validation.constraints.Size; + +import org.lastaflute.web.validation.Required; + +/** + * @author codelibs + * @author jflute + */ +public class EditForm extends CreateForm { + + private static final long serialVersionUID = 1L; + + @Required + @Size(max = 1000) + public String id; + + @Size(max = 255) + public String updatedBy; + + public Long updatedTime; + + @Required + public Integer versionNo; + +} diff --git a/src/main/java/org/codelibs/fess/app/web/admin/keymatch/KeyMatchEditForm.java b/src/main/java/org/codelibs/fess/app/web/admin/keymatch/KeyMatchEditForm.java deleted file mode 100644 index aaa88447c..000000000 --- a/src/main/java/org/codelibs/fess/app/web/admin/keymatch/KeyMatchEditForm.java +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Copyright 2009-2015 the CodeLibs Project and the Others. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, - * either express or implied. See the License for the specific language - * governing permissions and limitations under the License. - */ - -package org.codelibs.fess.app.web.admin.keymatch; - -import java.io.Serializable; - -import org.codelibs.fess.util.ComponentUtil; - -/** - * @author codelibs - * @author jflute - */ -public class KeyMatchEditForm implements Serializable { - - private static final long serialVersionUID = 1L; - - //@IntegerType - public int crudMode; - - //@Required(target = "confirmfromupdate,update,delete") - //@Maxbytelength(maxbytelength = 1000) - public String id; - - //@Required(target = "confirmfromcreate,create,confirmfromupdate,update,delete") - //@Maxbytelength(maxbytelength = 100) - public String term; - - //@Required(target = "confirmfromcreate,create,confirmfromupdate,update,delete") - //@Maxbytelength(maxbytelength = 4000) - public String query; - - //@Required(target = "confirmfromcreate,create,confirmfromupdate,update,delete") - //@IntegerType - //@IntRange(min = 0, max = 2147483647) - public String maxSize; - - //@Required(target = "confirmfromcreate,create,confirmfromupdate,update,delete") - public String boost; - - //@Required(target = "confirmfromupdate,update,delete") - //@Maxbytelength(maxbytelength = 255) - public String createdBy; - - //@Required(target = "confirmfromupdate,update,delete") - //@LongType - public String createdTime; - - //@Maxbytelength(maxbytelength = 255) - public String updatedBy; - - //@LongType - public String updatedTime; - - //@Required(target = "confirmfromupdate,update,delete") - //@IntegerType - public String versionNo; - - public void initialize() { - id = null; - term = null; - query = null; - maxSize = null; - boost = null; - createdBy = "system"; - createdTime = Long.toString(ComponentUtil.getSystemHelper().getCurrentTimeAsLong()); - updatedBy = null; - updatedTime = null; - versionNo = null; - maxSize = "10"; - boost = "100.0"; - } -} diff --git a/src/main/java/org/codelibs/fess/app/web/admin/keymatch/KeyMatchSearchForm.java b/src/main/java/org/codelibs/fess/app/web/admin/keymatch/SearchForm.java similarity index 81% rename from src/main/java/org/codelibs/fess/app/web/admin/keymatch/KeyMatchSearchForm.java rename to src/main/java/org/codelibs/fess/app/web/admin/keymatch/SearchForm.java index f28db079d..b67f4148a 100644 --- a/src/main/java/org/codelibs/fess/app/web/admin/keymatch/KeyMatchSearchForm.java +++ b/src/main/java/org/codelibs/fess/app/web/admin/keymatch/SearchForm.java @@ -17,16 +17,14 @@ package org.codelibs.fess.app.web.admin.keymatch; import java.io.Serializable; -import java.util.HashMap; -import java.util.Map; /** * @author codelibs * @author jflute */ -public class KeyMatchSearchForm implements Serializable { +public class SearchForm implements Serializable { private static final long serialVersionUID = 1L; - public Map searchParams = new HashMap(); + public String id; } diff --git a/src/main/webapp/WEB-INF/view/admin/keymatch/confirm.jsp b/src/main/webapp/WEB-INF/view/admin/keymatch/confirm.jsp index cb20f0387..4e770226a 100644 --- a/src/main/webapp/WEB-INF/view/admin/keymatch/confirm.jsp +++ b/src/main/webapp/WEB-INF/view/admin/keymatch/confirm.jsp @@ -113,7 +113,7 @@ <%-- Box Footer --%>