[pal-cvs 3570] [1304] added admin manager and a config tool.

Back to archive index

svnno****@sourc***** svnno****@sourc*****
2008年 11月 9日 (日) 07:32:32 JST


Revision: 1304
          http://svn.sourceforge.jp/cgi-bin/viewcvs.cgi?root=pal&view=rev&rev=1304
Author:   shinsuke
Date:     2008-11-09 07:32:31 +0900 (Sun, 09 Nov 2008)

Log Message:
-----------
added admin manager and a config tool.

Modified Paths:
--------------
    addresslist/trunk/src/main/java/jp/sf/pal/addresslist/AddressListConstants.java
    addresslist/trunk/src/main/java/jp/sf/pal/addresslist/action/user/CompanyAction.java
    addresslist/trunk/src/main/java/jp/sf/pal/addresslist/action/user/PersonAction.java
    addresslist/trunk/src/main/java/jp/sf/pal/addresslist/service/CompanyService.java
    addresslist/trunk/src/main/java/jp/sf/pal/addresslist/service/PersonService.java
    addresslist/trunk/src/main/java/jp/sf/pal/addresslist/util/AddressListUtil.java
    addresslist/trunk/src/main/resources/convention.dicon
    addresslist/trunk/src/main/webapp/WEB-INF/jetspeed-portlet.xml
    addresslist/trunk/src/main/webapp/WEB-INF/portlet.xml
    addresslist/trunk/src/main/webapp/WEB-INF/view/user/company/confirm.jsp
    addresslist/trunk/src/main/webapp/WEB-INF/view/user/company/edit.jsp
    addresslist/trunk/src/main/webapp/WEB-INF/view/user/person/confirm.jsp
    addresslist/trunk/src/main/webapp/WEB-INF/view/user/person/edit.jsp

Added Paths:
-----------
    addresslist/trunk/src/main/java/jp/sf/pal/addresslist/action/ConfigAction.java
    addresslist/trunk/src/main/java/jp/sf/pal/addresslist/action/admin/
    addresslist/trunk/src/main/java/jp/sf/pal/addresslist/action/admin/CompanyAction.java
    addresslist/trunk/src/main/java/jp/sf/pal/addresslist/action/admin/PersonAction.java
    addresslist/trunk/src/main/java/jp/sf/pal/addresslist/form/ConfigForm.java
    addresslist/trunk/src/main/java/jp/sf/pal/addresslist/form/admin/
    addresslist/trunk/src/main/java/jp/sf/pal/addresslist/form/admin/CompanyForm.java
    addresslist/trunk/src/main/java/jp/sf/pal/addresslist/form/admin/PersonForm.java
    addresslist/trunk/src/main/webapp/WEB-INF/view/admin/
    addresslist/trunk/src/main/webapp/WEB-INF/view/admin/company/
    addresslist/trunk/src/main/webapp/WEB-INF/view/admin/company/confirm.jsp
    addresslist/trunk/src/main/webapp/WEB-INF/view/admin/company/edit.jsp
    addresslist/trunk/src/main/webapp/WEB-INF/view/admin/company/error.jsp
    addresslist/trunk/src/main/webapp/WEB-INF/view/admin/company/index.jsp
    addresslist/trunk/src/main/webapp/WEB-INF/view/admin/person/
    addresslist/trunk/src/main/webapp/WEB-INF/view/admin/person/confirm.jsp
    addresslist/trunk/src/main/webapp/WEB-INF/view/admin/person/edit.jsp
    addresslist/trunk/src/main/webapp/WEB-INF/view/admin/person/error.jsp
    addresslist/trunk/src/main/webapp/WEB-INF/view/admin/person/index.jsp


-------------- next part --------------
Modified: addresslist/trunk/src/main/java/jp/sf/pal/addresslist/AddressListConstants.java
===================================================================
--- addresslist/trunk/src/main/java/jp/sf/pal/addresslist/AddressListConstants.java	2008-11-07 23:42:09 UTC (rev 1303)
+++ addresslist/trunk/src/main/java/jp/sf/pal/addresslist/AddressListConstants.java	2008-11-08 22:32:31 UTC (rev 1304)
@@ -2,4 +2,6 @@
 
 public class AddressListConstants {
 
+    public static final String GUEST_NAME = "guest";
+
 }

Added: addresslist/trunk/src/main/java/jp/sf/pal/addresslist/action/ConfigAction.java
===================================================================
--- addresslist/trunk/src/main/java/jp/sf/pal/addresslist/action/ConfigAction.java	                        (rev 0)
+++ addresslist/trunk/src/main/java/jp/sf/pal/addresslist/action/ConfigAction.java	2008-11-08 22:32:31 UTC (rev 1304)
@@ -0,0 +1,74 @@
+package jp.sf.pal.addresslist.action;
+
+import java.io.Serializable;
+
+import javax.servlet.http.HttpServletRequest;
+
+import jp.sf.pal.addresslist.AddressListConstants;
+import jp.sf.pal.addresslist.common.util.ConfigUtil;
+import jp.sf.pal.addresslist.common.util.SAStrutsUtil;
+import jp.sf.pal.addresslist.form.ConfigForm;
+
+import org.apache.commons.configuration.ConfigurationException;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.seasar.struts.annotation.ActionForm;
+import org.seasar.struts.annotation.Execute;
+import org.seasar.struts.exception.ActionMessagesException;
+
+public class ConfigAction implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    private static final Log log = LogFactory.getLog(ConfigAction.class);
+
+    @ActionForm
+    private ConfigForm configForm;
+
+    private transient HttpServletRequest request;
+
+    protected String displayIndex() {
+        configForm.guestName = ConfigUtil.getString(
+                AddressListConstants.GUEST_NAME, "guest");
+        return "index.jsp";
+    }
+
+    @Execute(validator = false, input = "index.jsp")
+    public String index() {
+        ConfigUtil.init(request);
+        return displayIndex();
+    }
+
+    @Execute(validator = false, input = "index.jsp")
+    public String update() {
+        ConfigUtil.init(request);
+        ConfigUtil.setProperty(AddressListConstants.GUEST_NAME,
+                configForm.guestName);
+        try {
+            ConfigUtil.save();
+            SAStrutsUtil.addMessage(request, "success.update_config");
+
+            return displayIndex();
+        } catch (ConfigurationException e) {
+            log.error(e.getMessage(), e);
+            throw new ActionMessagesException("errors.failed_to_update_config");
+        }
+    }
+
+    public ConfigForm getConfigForm() {
+        return configForm;
+    }
+
+    public void setConfigForm(ConfigForm configForm) {
+        this.configForm = configForm;
+    }
+
+    public HttpServletRequest getRequest() {
+        return request;
+    }
+
+    public void setRequest(HttpServletRequest request) {
+        this.request = request;
+    }
+
+}


Property changes on: addresslist/trunk/src/main/java/jp/sf/pal/addresslist/action/ConfigAction.java
___________________________________________________________________
Name: svn:eol-style
   + native

Added: addresslist/trunk/src/main/java/jp/sf/pal/addresslist/action/admin/CompanyAction.java
===================================================================
--- addresslist/trunk/src/main/java/jp/sf/pal/addresslist/action/admin/CompanyAction.java	                        (rev 0)
+++ addresslist/trunk/src/main/java/jp/sf/pal/addresslist/action/admin/CompanyAction.java	2008-11-08 22:32:31 UTC (rev 1304)
@@ -0,0 +1,337 @@
+package jp.sf.pal.addresslist.action.admin;
+
+import java.io.Serializable;
+import java.util.List;
+
+import javax.servlet.http.HttpServletRequest;
+
+import jp.sf.pal.addresslist.common.CommonConstants;
+import jp.sf.pal.addresslist.common.dxo.PagerDxo;
+import jp.sf.pal.addresslist.common.util.ConfigUtil;
+import jp.sf.pal.addresslist.common.util.SAStrutsUtil;
+import jp.sf.pal.addresslist.db.exentity.Company;
+import jp.sf.pal.addresslist.dxo.CompanyDxo;
+import jp.sf.pal.addresslist.form.user.CompanyForm;
+import jp.sf.pal.addresslist.pager.CompanyPager;
+import jp.sf.pal.addresslist.service.CompanyService;
+import jp.sf.pal.addresslist.util.AddressListUtil;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.seasar.struts.annotation.ActionForm;
+import org.seasar.struts.annotation.Execute;
+import org.seasar.struts.exception.ActionMessagesException;
+
+public class CompanyAction implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    private static final Log log = LogFactory.getLog(CompanyAction.class);
+
+    // for list
+
+    public List<Company> companyItems;
+
+    // for edit/confirm/delete
+
+    @ActionForm
+    private CompanyForm companyForm;
+
+    private CompanyService companyService;
+
+    private CompanyPager companyPager;
+
+    private PagerDxo pagerDxo;
+
+    private CompanyDxo companyDxo;
+
+    private transient HttpServletRequest request;
+
+    protected String displayList() {
+        // page navi
+        companyItems = companyService.getCompanyList(companyPager, null);
+
+        // restore from pager
+        // companyForm.companyname = companyPager.getCompanyname();
+
+        return "index.jsp";
+    }
+
+    @Execute(validator = false, input = "error.jsp")
+    public String index() {
+        ConfigUtil.init(request);
+        return displayList();
+    }
+
+    @Execute(validator = false, input = "error.jsp", urlPattern = "list/{pageNumber}")
+    public String list() {
+        // page navi
+        pagerDxo.convert(companyForm, companyPager);
+
+        return displayList();
+    }
+
+    @Execute(validator = false, input = "error.jsp")
+    public String search() {
+        // companyPager.setCompanyname(companyForm.companyname);
+
+        return displayList();
+    }
+
+    @Execute(validator = false, input = "error.jsp")
+    public String reset() {
+        companyPager.clear();
+
+        return displayList();
+    }
+
+    @Execute(validator = false, input = "error.jsp")
+    public String back() {
+        // reset edit page
+        loadListPageParameters();
+
+        return displayList();
+    }
+
+    @Execute(validator = false, input = "error.jsp")
+    public String editagain() {
+        return "edit.jsp";
+    }
+
+    @Execute(validator = false, input = "error.jsp", urlPattern = "confirmpage/{mode}/{id}")
+    public String confirmpage() {
+        if (companyForm.mode != CommonConstants.CONFIRM_MODE) {
+            throw new ActionMessagesException("errors.invalid.mode",
+                    new Object[] { CommonConstants.CONFIRM_MODE,
+                            companyForm.mode });
+        }
+
+        // update edit page
+        loadDetailsPageParameters();
+
+        loadCompany();
+
+        return "confirm.jsp";
+    }
+
+    @Execute(validator = false, input = "error.jsp")
+    public String createpage() {
+        // page navi
+        companyForm.initialize();
+        companyForm.mode = CommonConstants.CREATE_MODE;
+
+        // update edit page
+        loadDetailsPageParameters();
+
+        return "edit.jsp";
+    }
+
+    @Execute(validator = false, input = "error.jsp", urlPattern = "editpage/{mode}/{id}")
+    public String editpage() {
+        if (companyForm.mode != CommonConstants.EDIT_MODE) {
+            throw new ActionMessagesException(
+                    "errors.invalid.mode",
+                    new Object[] { CommonConstants.EDIT_MODE, companyForm.mode });
+        }
+
+        // update edit page
+        loadDetailsPageParameters();
+
+        loadCompany();
+
+        return "edit.jsp";
+    }
+
+    @Execute(validator = false, input = "error.jsp")
+    public String editpagefromconfirm() {
+        companyForm.mode = CommonConstants.EDIT_MODE;
+
+        // update edit page
+        loadDetailsPageParameters();
+
+        loadCompany();
+
+        return "edit.jsp";
+    }
+
+    @Execute(validator = true, input = "edit.jsp")
+    public String confirm() {
+        return "confirm.jsp";
+    }
+
+    @Execute(validator = false, input = "error.jsp", urlPattern = "deletepage/{mode}/{id}")
+    public String deletepage() {
+        if (companyForm.mode != CommonConstants.DELETE_MODE) {
+            throw new ActionMessagesException("errors.invalid.mode",
+                    new Object[] { CommonConstants.DELETE_MODE,
+                            companyForm.mode });
+        }
+
+        // update edit page
+        loadDetailsPageParameters();
+
+        loadCompany();
+
+        return "confirm.jsp";
+    }
+
+    @Execute(validator = false, input = "error.jsp")
+    public String deletepagefromconfirm() {
+        companyForm.mode = CommonConstants.DELETE_MODE;
+
+        // update edit page
+        loadDetailsPageParameters();
+
+        loadCompany();
+
+        return "confirm.jsp";
+    }
+
+    @Execute(validator = true, input = "edit.jsp")
+    public String create() {
+        try {
+            Company company = createCompany();
+            companyService.store(company);
+            SAStrutsUtil.addMessage(request, "success.create_company");
+
+            // reset edit page
+            loadListPageParameters();
+
+            return displayList();
+        } catch (Exception e) {
+            log.error(e.getMessage(), e);
+            throw new ActionMessagesException("errors.failed_to_create_company");
+        }
+    }
+
+    @Execute(validator = true, input = "edit.jsp")
+    public String update() {
+        try {
+            Company company = createCompany();
+            companyService.store(company);
+            SAStrutsUtil.addMessage(request, "success.update_company");
+
+            // reset edit page
+            loadListPageParameters();
+
+            return displayList();
+        } catch (Exception e) {
+            log.error(e.getMessage(), e);
+            throw new ActionMessagesException("errors.failed_to_update_company");
+        }
+    }
+
+    @Execute(validator = false, input = "error.jsp")
+    public String delete() {
+        try {
+            Long id = Long.parseLong(companyForm.id);
+            companyService.disable(id, request.getRemoteUser());
+            SAStrutsUtil.addMessage(request, "success.delete_company");
+
+            // reset edit page
+            loadListPageParameters();
+
+            return displayList();
+        } catch (Exception e) {
+            log.error(e.getMessage(), e);
+            throw new ActionMessagesException("errors.failed_to_delete_company");
+        }
+    }
+
+    private void loadCompany() {
+        Long id = Long.parseLong(companyForm.id);
+        Company company = companyService.getCompany(id, null);
+        if (company == null) {
+            // throw an exception
+            throw new ActionMessagesException("errors.could_not_find_company",
+                    new Object[] { companyForm.id });
+        }
+        companyDxo.convertFromCompanyToForm(company, companyForm);
+
+    }
+
+    private Company createCompany() {
+        String userId = AddressListUtil.getUserId(request);
+        Company company;
+        if (companyForm.mode == CommonConstants.EDIT_MODE) {
+            Long id = Long.parseLong(companyForm.id);
+            company = companyService.getCompany(id, null);
+            if (company == null) {
+                // throw an exception
+                throw new ActionMessagesException(
+                        "errors.could_not_find_company",
+                        new Object[] { companyForm.id });
+            }
+            company.setUpdatedBy(userId);
+        } else {
+            company = new Company();
+            company.setUserId(userId);
+            company.setUpdatedBy(userId);
+            company.setCreatedBy(userId);
+        }
+        companyDxo.convertFromFormToCompany(companyForm, company);
+
+        return company;
+    }
+
+    private void loadListPageParameters() {
+    }
+
+    private void loadDetailsPageParameters() {
+    }
+
+    /**
+     * @return the request
+     */
+    public HttpServletRequest getRequest() {
+        return request;
+    }
+
+    /**
+     * @param request the request to set
+     */
+    public void setRequest(HttpServletRequest request) {
+        this.request = request;
+    }
+
+    public CompanyForm getCompanyForm() {
+        return companyForm;
+    }
+
+    public void setCompanyForm(CompanyForm companyForm) {
+        this.companyForm = companyForm;
+    }
+
+    public CompanyService getCompanyService() {
+        return companyService;
+    }
+
+    public void setCompanyService(CompanyService companyService) {
+        this.companyService = companyService;
+    }
+
+    public CompanyPager getCompanyPager() {
+        return companyPager;
+    }
+
+    public void setCompanyPager(CompanyPager companyPager) {
+        this.companyPager = companyPager;
+    }
+
+    public PagerDxo getPagerDxo() {
+        return pagerDxo;
+    }
+
+    public void setPagerDxo(PagerDxo pagerDxo) {
+        this.pagerDxo = pagerDxo;
+    }
+
+    public CompanyDxo getCompanyDxo() {
+        return companyDxo;
+    }
+
+    public void setCompanyDxo(CompanyDxo companyDxo) {
+        this.companyDxo = companyDxo;
+    }
+
+}


Property changes on: addresslist/trunk/src/main/java/jp/sf/pal/addresslist/action/admin/CompanyAction.java
___________________________________________________________________
Name: svn:eol-style
   + native

Added: addresslist/trunk/src/main/java/jp/sf/pal/addresslist/action/admin/PersonAction.java
===================================================================
--- addresslist/trunk/src/main/java/jp/sf/pal/addresslist/action/admin/PersonAction.java	                        (rev 0)
+++ addresslist/trunk/src/main/java/jp/sf/pal/addresslist/action/admin/PersonAction.java	2008-11-08 22:32:31 UTC (rev 1304)
@@ -0,0 +1,362 @@
+package jp.sf.pal.addresslist.action.admin;
+
+import java.io.Serializable;
+import java.util.List;
+
+import javax.servlet.http.HttpServletRequest;
+
+import jp.sf.pal.addresslist.common.CommonConstants;
+import jp.sf.pal.addresslist.common.dxo.PagerDxo;
+import jp.sf.pal.addresslist.common.util.ConfigUtil;
+import jp.sf.pal.addresslist.common.util.SAStrutsUtil;
+import jp.sf.pal.addresslist.db.exentity.Company;
+import jp.sf.pal.addresslist.db.exentity.Person;
+import jp.sf.pal.addresslist.dxo.PersonDxo;
+import jp.sf.pal.addresslist.form.user.PersonForm;
+import jp.sf.pal.addresslist.pager.PersonPager;
+import jp.sf.pal.addresslist.service.CompanyService;
+import jp.sf.pal.addresslist.service.PersonService;
+import jp.sf.pal.addresslist.util.AddressListUtil;
+
+import org.apache.commons.lang.StringUtils;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.seasar.struts.annotation.ActionForm;
+import org.seasar.struts.annotation.Execute;
+import org.seasar.struts.exception.ActionMessagesException;
+
+public class PersonAction implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    private static final Log log = LogFactory.getLog(PersonAction.class);
+
+    // for list
+
+    public List<Person> personItems;
+
+    // for edit/confirm/delete
+    public Company company;
+
+    @ActionForm
+    private PersonForm personForm;
+
+    private PersonService personService;
+
+    private CompanyService companyService;
+
+    private PersonPager personPager;
+
+    private PagerDxo pagerDxo;
+
+    private PersonDxo personDxo;
+
+    private transient HttpServletRequest request;
+
+    protected String displayList() {
+        // page navi
+        personItems = personService.getPersonList(personPager, null);
+
+        // restore from pager
+        // personForm.personname = personPager.getPersonname();
+
+        return "index.jsp";
+    }
+
+    @Execute(validator = false, input = "error.jsp")
+    public String index() {
+        ConfigUtil.init(request);
+        return displayList();
+    }
+
+    @Execute(validator = false, input = "error.jsp", urlPattern = "list/{pageNumber}")
+    public String list() {
+        // page navi
+        pagerDxo.convert(personForm, personPager);
+
+        return displayList();
+    }
+
+    @Execute(validator = false, input = "error.jsp")
+    public String search() {
+        // personPager.setPersonname(personForm.personname);
+
+        return displayList();
+    }
+
+    @Execute(validator = false, input = "error.jsp")
+    public String reset() {
+        personPager.clear();
+
+        return displayList();
+    }
+
+    @Execute(validator = false, input = "error.jsp")
+    public String back() {
+        // reset edit page
+        loadListPageParameters();
+
+        return displayList();
+    }
+
+    @Execute(validator = false, input = "error.jsp")
+    public String editagain() {
+        loadDetailsPageParameters();
+        return "edit.jsp";
+    }
+
+    @Execute(validator = false, input = "error.jsp", urlPattern = "confirmpage/{mode}/{id}")
+    public String confirmpage() {
+        if (personForm.mode != CommonConstants.CONFIRM_MODE) {
+            throw new ActionMessagesException("errors.invalid.mode",
+                    new Object[] { CommonConstants.CONFIRM_MODE,
+                            personForm.mode });
+        }
+
+        // update edit page
+        loadDetailsPageParameters();
+
+        loadPerson();
+
+        return "confirm.jsp";
+    }
+
+    @Execute(validator = false, input = "error.jsp")
+    public String createpage() {
+        // page navi
+        personForm.initialize();
+        personForm.mode = CommonConstants.CREATE_MODE;
+
+        // update edit page
+        loadDetailsPageParameters();
+
+        return "edit.jsp";
+    }
+
+    @Execute(validator = false, input = "error.jsp", urlPattern = "editpage/{mode}/{id}")
+    public String editpage() {
+        if (personForm.mode != CommonConstants.EDIT_MODE) {
+            throw new ActionMessagesException("errors.invalid.mode",
+                    new Object[] { CommonConstants.EDIT_MODE, personForm.mode });
+        }
+
+        // update edit page
+        loadDetailsPageParameters();
+
+        loadPerson();
+
+        return "edit.jsp";
+    }
+
+    @Execute(validator = false, input = "error.jsp")
+    public String editpagefromconfirm() {
+        personForm.mode = CommonConstants.EDIT_MODE;
+
+        // update edit page
+        loadDetailsPageParameters();
+
+        loadPerson();
+
+        return "edit.jsp";
+    }
+
+    @Execute(validator = true, input = "edit.jsp")
+    public String confirm() {
+        loadDetailsPageParameters();
+        return "confirm.jsp";
+    }
+
+    @Execute(validator = false, input = "error.jsp", urlPattern = "deletepage/{mode}/{id}")
+    public String deletepage() {
+        if (personForm.mode != CommonConstants.DELETE_MODE) {
+            throw new ActionMessagesException(
+                    "errors.invalid.mode",
+                    new Object[] { CommonConstants.DELETE_MODE, personForm.mode });
+        }
+
+        // update edit page
+        loadDetailsPageParameters();
+
+        loadPerson();
+
+        return "confirm.jsp";
+    }
+
+    @Execute(validator = false, input = "error.jsp")
+    public String deletepagefromconfirm() {
+        personForm.mode = CommonConstants.DELETE_MODE;
+
+        // update edit page
+        loadDetailsPageParameters();
+
+        loadPerson();
+
+        return "confirm.jsp";
+    }
+
+    @Execute(validator = true, input = "edit.jsp")
+    public String create() {
+        try {
+            Person person = createPerson();
+            personService.store(person);
+            SAStrutsUtil.addMessage(request, "success.create_person");
+
+            // reset edit page
+            loadListPageParameters();
+
+            return displayList();
+        } catch (Exception e) {
+            log.error(e.getMessage(), e);
+            throw new ActionMessagesException("errors.failed_to_create_person");
+        }
+    }
+
+    @Execute(validator = true, input = "edit.jsp")
+    public String update() {
+        try {
+            Person person = createPerson();
+            personService.store(person);
+            SAStrutsUtil.addMessage(request, "success.update_person");
+
+            // reset edit page
+            loadListPageParameters();
+
+            return displayList();
+        } catch (Exception e) {
+            log.error(e.getMessage(), e);
+            throw new ActionMessagesException("errors.failed_to_update_person");
+        }
+    }
+
+    @Execute(validator = false, input = "error.jsp")
+    public String delete() {
+        try {
+            Long id = Long.parseLong(personForm.id);
+            personService.disable(id, request.getRemoteUser());
+            SAStrutsUtil.addMessage(request, "success.delete_person");
+
+            // reset edit page
+            loadListPageParameters();
+
+            return displayList();
+        } catch (Exception e) {
+            log.error(e.getMessage(), e);
+            throw new ActionMessagesException("errors.failed_to_delete_person");
+        }
+    }
+
+    private void loadPerson() {
+        Long id = Long.parseLong(personForm.id);
+        Person person = personService.getPerson(id, null);
+        if (person == null) {
+            // throw an exception
+            throw new ActionMessagesException("errors.could_not_find_person",
+                    new Object[] { personForm.id });
+        }
+        personDxo.convertFromPersonToForm(person, personForm);
+
+    }
+
+    private Person createPerson() {
+        String userId = AddressListUtil.getUserId(request);
+        Person person;
+        if (personForm.mode == CommonConstants.EDIT_MODE) {
+            Long id = Long.parseLong(personForm.id);
+            person = personService.getPerson(id, null);
+            if (person == null) {
+                // throw an exception
+                throw new ActionMessagesException(
+                        "errors.could_not_find_person",
+                        new Object[] { personForm.id });
+            }
+            person.setUpdatedBy(userId);
+        } else {
+            person = new Person();
+            person.setUserId(userId);
+            person.setUpdatedBy(userId);
+            person.setCreatedBy(userId);
+        }
+        personDxo.convertFromFormToPerson(personForm, person);
+
+        return person;
+    }
+
+    private void loadListPageParameters() {
+    }
+
+    private void loadDetailsPageParameters() {
+        if (!StringUtils.isEmpty(personForm.companyId)) {
+            String userId = AddressListUtil.getUserId(request);
+            Long companyId = Long.parseLong(personForm.companyId);
+            company = companyService.getCompany(companyId, userId);
+        }
+    }
+
+    public List<Company> getCompanyItems() {
+        String userId = AddressListUtil.getUserId(request);
+        return companyService.getCompanyList(userId);
+    }
+
+    /**
+     * @return the request
+     */
+    public HttpServletRequest getRequest() {
+        return request;
+    }
+
+    /**
+     * @param request the request to set
+     */
+    public void setRequest(HttpServletRequest request) {
+        this.request = request;
+    }
+
+    public PersonForm getPersonForm() {
+        return personForm;
+    }
+
+    public void setPersonForm(PersonForm personForm) {
+        this.personForm = personForm;
+    }
+
+    public PersonService getPersonService() {
+        return personService;
+    }
+
+    public void setPersonService(PersonService personService) {
+        this.personService = personService;
+    }
+
+    public PersonPager getPersonPager() {
+        return personPager;
+    }
+
+    public void setPersonPager(PersonPager personPager) {
+        this.personPager = personPager;
+    }
+
+    public PagerDxo getPagerDxo() {
+        return pagerDxo;
+    }
+
+    public void setPagerDxo(PagerDxo pagerDxo) {
+        this.pagerDxo = pagerDxo;
+    }
+
+    public PersonDxo getPersonDxo() {
+        return personDxo;
+    }
+
+    public void setPersonDxo(PersonDxo personDxo) {
+        this.personDxo = personDxo;
+    }
+
+    public CompanyService getCompanyService() {
+        return companyService;
+    }
+
+    public void setCompanyService(CompanyService companyService) {
+        this.companyService = companyService;
+    }
+
+}


Property changes on: addresslist/trunk/src/main/java/jp/sf/pal/addresslist/action/admin/PersonAction.java
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: addresslist/trunk/src/main/java/jp/sf/pal/addresslist/action/user/CompanyAction.java
===================================================================
--- addresslist/trunk/src/main/java/jp/sf/pal/addresslist/action/user/CompanyAction.java	2008-11-07 23:42:09 UTC (rev 1303)
+++ addresslist/trunk/src/main/java/jp/sf/pal/addresslist/action/user/CompanyAction.java	2008-11-08 22:32:31 UTC (rev 1304)
@@ -50,7 +50,6 @@
     protected String displayList() {
         // page navi
         String userId = AddressListUtil.getUserId(request);
-        // TODO public?
         companyItems = companyService.getCompanyList(companyPager, userId);
 
         // restore from pager

Modified: addresslist/trunk/src/main/java/jp/sf/pal/addresslist/action/user/PersonAction.java
===================================================================
--- addresslist/trunk/src/main/java/jp/sf/pal/addresslist/action/user/PersonAction.java	2008-11-07 23:42:09 UTC (rev 1303)
+++ addresslist/trunk/src/main/java/jp/sf/pal/addresslist/action/user/PersonAction.java	2008-11-08 22:32:31 UTC (rev 1304)
@@ -56,7 +56,6 @@
     protected String displayList() {
         // page navi
         String userId = AddressListUtil.getUserId(request);
-        // TODO public?
         personItems = personService.getPersonList(personPager, userId);
 
         // restore from pager

Added: addresslist/trunk/src/main/java/jp/sf/pal/addresslist/form/ConfigForm.java
===================================================================
--- addresslist/trunk/src/main/java/jp/sf/pal/addresslist/form/ConfigForm.java	                        (rev 0)
+++ addresslist/trunk/src/main/java/jp/sf/pal/addresslist/form/ConfigForm.java	2008-11-08 22:32:31 UTC (rev 1304)
@@ -0,0 +1,14 @@
+package jp.sf.pal.addresslist.form;
+
+import java.io.Serializable;
+
+import org.seasar.struts.annotation.Required;
+
+public class ConfigForm implements Serializable {
+
+    private static final long serialVersionUID = 2108115319030589706L;
+
+    @Required(target = "guest")
+    public String guestName;
+
+}


Property changes on: addresslist/trunk/src/main/java/jp/sf/pal/addresslist/form/ConfigForm.java
___________________________________________________________________
Name: svn:eol-style
   + native

Added: addresslist/trunk/src/main/java/jp/sf/pal/addresslist/form/admin/CompanyForm.java
===================================================================
--- addresslist/trunk/src/main/java/jp/sf/pal/addresslist/form/admin/CompanyForm.java	                        (rev 0)
+++ addresslist/trunk/src/main/java/jp/sf/pal/addresslist/form/admin/CompanyForm.java	2008-11-08 22:32:31 UTC (rev 1304)
@@ -0,0 +1,120 @@
+package jp.sf.pal.addresslist.form.admin;
+
+import java.io.Serializable;
+
+import jp.sf.pal.addresslist.common.form.PagingResultForm;
+
+import org.seasar.struts.annotation.DateType;
+import org.seasar.struts.annotation.IntegerType;
+import org.seasar.struts.annotation.LongType;
+import org.seasar.struts.annotation.Maxbytelength;
+import org.seasar.struts.annotation.Required;
+
+public class CompanyForm implements Serializable, PagingResultForm {
+
+    private static final long serialVersionUID = 322481089019734947L;
+
+    @IntegerType
+    public int mode;
+
+    @Required(target = "update,delete")
+    @LongType
+    public String id;
+
+    @Maxbytelength(maxbytelength = 255)
+    public String userId;
+
+    @Required(target = "confirm,create,update,delete")
+    @Maxbytelength(maxbytelength = 200)
+    public String name;
+
+    @Maxbytelength(maxbytelength = 200)
+    public String nameDesc;
+
+    @Maxbytelength(maxbytelength = 200)
+    public String department;
+
+    @Maxbytelength(maxbytelength = 200)
+    public String building;
+
+    @Maxbytelength(maxbytelength = 200)
+    public String street;
+
+    @Maxbytelength(maxbytelength = 100)
+    public String city;
+
+    @Maxbytelength(maxbytelength = 100)
+    public String state;
+
+    @Maxbytelength(maxbytelength = 30)
+    public String postalCode;
+
+    @Maxbytelength(maxbytelength = 200)
+    public String country;
+
+    @Maxbytelength(maxbytelength = 40)
+    public String telephone1;
+
+    @Maxbytelength(maxbytelength = 40)
+    public String telephone2;
+
+    @Maxbytelength(maxbytelength = 40)
+    public String fax1;
+
+    @Maxbytelength(maxbytelength = 40)
+    public String fax2;
+
+    @Maxbytelength(maxbytelength = 255)
+    public String url;
+
+    @Required(target = "confirm,create,update,delete")
+    @Maxbytelength(maxbytelength = 1)
+    public String isPublic;
+
+    @DateType
+    public String createdTime;
+
+    @Maxbytelength(maxbytelength = 255)
+    public String createdBy;
+
+    @DateType
+    public String updatedTime;
+
+    @Maxbytelength(maxbytelength = 255)
+    public String updatedBy;
+
+    @DateType
+    public String deletedTime;
+
+    @Maxbytelength(maxbytelength = 255)
+    public String deletedBy;
+
+    @IntegerType
+    public String pageNumber;
+
+    public void initialize() {
+        id = null;
+        userId = null;
+        name = null;
+        nameDesc = null;
+        department = null;
+        building = null;
+        street = null;
+        city = null;
+        state = null;
+        postalCode = null;
+        country = null;
+        telephone1 = null;
+        telephone2 = null;
+        fax1 = null;
+        fax2 = null;
+        url = null;
+        isPublic = null;
+        createdTime = null;
+        createdBy = null;
+        updatedTime = null;
+        updatedBy = null;
+        deletedTime = null;
+        deletedBy = null;
+    }
+}


Property changes on: addresslist/trunk/src/main/java/jp/sf/pal/addresslist/form/admin/CompanyForm.java
___________________________________________________________________
Name: svn:eol-style
   + native

Added: addresslist/trunk/src/main/java/jp/sf/pal/addresslist/form/admin/PersonForm.java
===================================================================
--- addresslist/trunk/src/main/java/jp/sf/pal/addresslist/form/admin/PersonForm.java	                        (rev 0)
+++ addresslist/trunk/src/main/java/jp/sf/pal/addresslist/form/admin/PersonForm.java	2008-11-08 22:32:31 UTC (rev 1304)
@@ -0,0 +1,175 @@
+package jp.sf.pal.addresslist.form.admin;
+
+import java.io.Serializable;
+
+import jp.sf.pal.addresslist.common.form.PagingResultForm;
+
+import org.seasar.struts.annotation.DateType;
+import org.seasar.struts.annotation.IntegerType;
+import org.seasar.struts.annotation.LongType;
+import org.seasar.struts.annotation.Maxbytelength;
+import org.seasar.struts.annotation.Required;
+
+public class PersonForm implements Serializable, PagingResultForm {
+
+    private static final long serialVersionUID = 3416220978746750608L;
+
+    @IntegerType
+    public int mode;
+
+    @Required(target = "update,delete")
+    @LongType
+    public String id;
+
+    @Maxbytelength(maxbytelength = 100)
+    public String familyName;
+
+    @Maxbytelength(maxbytelength = 100)
+    public String familyNameDesc;
+
+    @Required(target = "confirm,create,update,delete")
+    @Maxbytelength(maxbytelength = 100)
+    public String givenName;
+
+    @Maxbytelength(maxbytelength = 100)
+    public String givenNameDesc;
+
+    @Maxbytelength(maxbytelength = 50)
+    public String middleName;
+
+    @Maxbytelength(maxbytelength = 30)
+    public String namePrefix;
+
+    @Maxbytelength(maxbytelength = 30)
+    public String nameSuffix;
+
+    @Maxbytelength(maxbytelength = 100)
+    public String nickname;
+
+    @Maxbytelength(maxbytelength = 50)
+    public String jobTitle;
+
+    @Maxbytelength(maxbytelength = 1)
+    public String isPublic;
+
+    @Maxbytelength(maxbytelength = 40)
+    public String homeTelephone;
+
+    @Maxbytelength(maxbytelength = 40)
+    public String homeCellphone;
+
+    @Maxbytelength(maxbytelength = 200)
+    public String homeEmailPC;
+
+    @Maxbytelength(maxbytelength = 200)
+    public String homeEmailMobile;
+
+    @Maxbytelength(maxbytelength = 40)
+    public String homeFax;
+
+    @Maxbytelength(maxbytelength = 40)
+    public String businessTelephone;
+
+    @Maxbytelength(maxbytelength = 40)
+    public String businessCellphone;
+
+    @Maxbytelength(maxbytelength = 200)
+    public String businessEmailPC;
+
+    @Maxbytelength(maxbytelength = 200)
+    public String businessEmailMobile;
+
+    @Maxbytelength(maxbytelength = 40)
+    public String businessFax;
+
+    @Maxbytelength(maxbytelength = 30)
+    public String postalCode;
+
+    @Maxbytelength(maxbytelength = 100)
+    public String state;
+
+    @Maxbytelength(maxbytelength = 100)
+    public String city;
+
+    @Maxbytelength(maxbytelength = 200)
+    public String street;
+
+    @Maxbytelength(maxbytelength = 200)
+    public String building;
+
+    @LongType
+    public String companyId;
+
+    @Maxbytelength(maxbytelength = 200)
+    public String customData1;
+
+    @Maxbytelength(maxbytelength = 200)
+    public String customData2;
+
+    @Maxbytelength(maxbytelength = 200)
+    public String customData3;
+
+    @Maxbytelength(maxbytelength = 200)
+    public String customData4;
+
+    @DateType
+    public String createdTime;
+
+    @Maxbytelength(maxbytelength = 255)
+    public String createdBy;
+
+    @DateType
+    public String updatedTime;
+
+    @Maxbytelength(maxbytelength = 255)
+    public String updatedBy;
+
+    @DateType
+    public String deletedTime;
+
+    @Maxbytelength(maxbytelength = 255)
+    public String deletedBy;
+
+    @IntegerType
+    public String pageNumber;
+
+    public void initialize() {
+        id = null;
+        familyName = null;
+        familyNameDesc = null;
+        givenName = null;
+        givenNameDesc = null;
+        middleName = null;
+        namePrefix = null;
+        nameSuffix = null;
+        nickname = null;
+        jobTitle = null;
+        isPublic = null;
+        homeTelephone = null;
+        homeCellphone = null;
+        homeEmailPC = null;
+        homeEmailMobile = null;
+        homeFax = null;
+        businessTelephone = null;
+        businessCellphone = null;
+        businessEmailPC = null;
+        businessEmailMobile = null;
+        businessFax = null;
+        postalCode = null;
+        state = null;
+        city = null;
+        street = null;
+        building = null;
+        companyId = null;
+        customData1 = null;
+        customData2 = null;
+        customData3 = null;
+        customData4 = null;
+        createdTime = null;
+        createdBy = null;
+        updatedTime = null;
+        updatedBy = null;
+        deletedTime = null;
+        deletedBy = null;
+    }
+}


Property changes on: addresslist/trunk/src/main/java/jp/sf/pal/addresslist/form/admin/PersonForm.java
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: addresslist/trunk/src/main/java/jp/sf/pal/addresslist/service/CompanyService.java
===================================================================
--- addresslist/trunk/src/main/java/jp/sf/pal/addresslist/service/CompanyService.java	2008-11-07 23:42:09 UTC (rev 1303)
+++ addresslist/trunk/src/main/java/jp/sf/pal/addresslist/service/CompanyService.java	2008-11-08 22:32:31 UTC (rev 1304)
@@ -5,9 +5,11 @@
 import java.util.Date;
 import java.util.List;
 
+import jp.sf.pal.addresslist.common.CommonConstants;
 import jp.sf.pal.addresslist.common.dxo.PagerDxo;
 import jp.sf.pal.addresslist.common.util.PagingResultBeanWrapper;
 import jp.sf.pal.addresslist.db.allcommon.cbean.PagingResultBean;
+import jp.sf.pal.addresslist.db.allcommon.cbean.UnionQuery;
 import jp.sf.pal.addresslist.db.cbean.CompanyCB;
 import jp.sf.pal.addresslist.db.cbean.UserInfoCB;
 import jp.sf.pal.addresslist.db.exbhv.CompanyBhv;
@@ -59,6 +61,14 @@
         cb.query().setDeletedBy_IsNull();
         if (userId != null) {
             cb.query().setUserId_Equal(userId);
+            cb.query().setIsPublic_Equal(CommonConstants.FALSE);
+            cb.unionAll(new UnionQuery<CompanyCB>() {
+                public void query(CompanyCB unionCB) {
+                    unionCB.query().setIsPublic_Equal(CommonConstants.TRUE);
+                    unionCB.query().setDeletedBy_IsNull();
+                }
+            });
+
         }
 
         cb.query().addOrderBy_NameDesc_Asc();

Modified: addresslist/trunk/src/main/java/jp/sf/pal/addresslist/service/PersonService.java
===================================================================
--- addresslist/trunk/src/main/java/jp/sf/pal/addresslist/service/PersonService.java	2008-11-07 23:42:09 UTC (rev 1303)
+++ addresslist/trunk/src/main/java/jp/sf/pal/addresslist/service/PersonService.java	2008-11-08 22:32:31 UTC (rev 1304)
@@ -5,9 +5,11 @@
 import java.util.Date;
 import java.util.List;
 
+import jp.sf.pal.addresslist.common.CommonConstants;
 import jp.sf.pal.addresslist.common.dxo.PagerDxo;
 import jp.sf.pal.addresslist.common.util.PagingResultBeanWrapper;
 import jp.sf.pal.addresslist.db.allcommon.cbean.PagingResultBean;
+import jp.sf.pal.addresslist.db.allcommon.cbean.UnionQuery;
 import jp.sf.pal.addresslist.db.cbean.ContactCB;
 import jp.sf.pal.addresslist.db.cbean.CustomCB;
 import jp.sf.pal.addresslist.db.cbean.PersonCB;
@@ -71,10 +73,17 @@
         cb.setupSelect_Company();
         cb.specify().specifyCompany().columnName();
 
+        cb.query().setDeletedBy_IsNull();
         if (userId != null) {
             cb.query().setUserId_Equal(userId);
+            cb.query().setIsPublic_Equal(CommonConstants.FALSE);
+            cb.unionAll(new UnionQuery<PersonCB>() {
+                public void query(PersonCB unionCB) {
+                    unionCB.query().setIsPublic_Equal(CommonConstants.TRUE);
+                    unionCB.query().setDeletedBy_IsNull();
+                }
+            });
         }
-        cb.query().setDeletedBy_IsNull();
 
         cb.query().addOrderBy_FamilyName_Asc();
 

Modified: addresslist/trunk/src/main/java/jp/sf/pal/addresslist/util/AddressListUtil.java
===================================================================
--- addresslist/trunk/src/main/java/jp/sf/pal/addresslist/util/AddressListUtil.java	2008-11-07 23:42:09 UTC (rev 1303)
+++ addresslist/trunk/src/main/java/jp/sf/pal/addresslist/util/AddressListUtil.java	2008-11-08 22:32:31 UTC (rev 1304)
@@ -2,14 +2,18 @@
 
 import javax.servlet.http.HttpServletRequest;
 
+import jp.sf.pal.addresslist.AddressListConstants;
+import jp.sf.pal.addresslist.common.util.ConfigUtil;
+
 import org.apache.commons.lang.StringUtils;
 
 public class AddressListUtil {
     public static String getUserId(HttpServletRequest request) {
         String userId = request.getRemoteUser();
         if (StringUtils.isEmpty(userId)) {
-            // TODO set guest to userId
-            userId = "guest";
+            // set guest to userId
+            userId = ConfigUtil.getString(AddressListConstants.GUEST_NAME,
+                    "guest");
         }
         return userId;
     }

Modified: addresslist/trunk/src/main/resources/convention.dicon
===================================================================
--- addresslist/trunk/src/main/resources/convention.dicon	2008-11-07 23:42:09 UTC (rev 1303)
+++ addresslist/trunk/src/main/resources/convention.dicon	2008-11-08 22:32:31 UTC (rev 1304)
@@ -12,10 +12,8 @@
 		<initMethod name="addIgnorePackageName">
 			<arg>"jp.sf.pal.addresslist.common.util"</arg>
 		</initMethod>
-<!--
 		<initMethod name="addIgnorePackageName">
 			<arg>"jp.sf.pal.addresslist.db"</arg>
 		</initMethod>
--->
 	</component>
 </components>

Modified: addresslist/trunk/src/main/webapp/WEB-INF/jetspeed-portlet.xml
===================================================================
--- addresslist/trunk/src/main/webapp/WEB-INF/jetspeed-portlet.xml	2008-11-07 23:42:09 UTC (rev 1303)
+++ addresslist/trunk/src/main/webapp/WEB-INF/jetspeed-portlet.xml	2008-11-08 22:32:31 UTC (rev 1304)
@@ -19,6 +19,10 @@
   <dc:title>AddressList</dc:title>
   <dc:creator>PAL Project</dc:creator>
   <portlet>
+    <portlet-name>AddressListManager</portlet-name>
+    <js:security-constraint-ref>admin</js:security-constraint-ref>
+  </portlet>
+  <portlet>
     <portlet-name>AddressListConfig</portlet-name>
     <js:security-constraint-ref>admin</js:security-constraint-ref>
   </portlet>

Modified: addresslist/trunk/src/main/webapp/WEB-INF/portlet.xml
===================================================================
--- addresslist/trunk/src/main/webapp/WEB-INF/portlet.xml	2008-11-07 23:42:09 UTC (rev 1303)
+++ addresslist/trunk/src/main/webapp/WEB-INF/portlet.xml	2008-11-08 22:32:31 UTC (rev 1304)
@@ -44,4 +44,26 @@
       <keywords>AddressList,URL</keywords>
     </portlet-info>
   </portlet>
+  <portlet>
+    <portlet-name>AddressListManager</portlet-name>
+    <display-name>AddressList: AddressList Manager</display-name>
+    <description>Manage an address list. </description>
+    <portlet-class>org.seasar.struts.portlet.SAStrutsPortlet</portlet-class>
+    <init-param>
+      <name>viewPage</name>
+      <value>/admin/person/</value>
+    </init-param>
+    <expiration-cache>0</expiration-cache>
+    <supports>
+      <mime-type>text/html</mime-type>
+      <portlet-mode>VIEW</portlet-mode>
+    </supports>
+    <supported-locale>en</supported-locale>
+    <supported-locale>ja</supported-locale>
+    <portlet-info>
+      <title>AddressList Manager</title>
+      <short-title>AddressLists</short-title>
+      <keywords>AddressList,URL</keywords>
+    </portlet-info>
+  </portlet>
 </portlet-app>

Added: addresslist/trunk/src/main/webapp/WEB-INF/view/admin/company/confirm.jsp
===================================================================
--- addresslist/trunk/src/main/webapp/WEB-INF/view/admin/company/confirm.jsp	                        (rev 0)
+++ addresslist/trunk/src/main/webapp/WEB-INF/view/admin/company/confirm.jsp	2008-11-08 22:32:31 UTC (rev 1304)
@@ -0,0 +1,120 @@
+<%@page pageEncoding="UTF-8" contentType="text/html; charset=UTF-8" %>
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<title></title>
+</head>
+<body>
+<div style="padding:3px;">
+<!-- tab: BEGIN -->
+<div class="tab-nav">
+  <ul>
+    <li class="first"></li>
+    <li class="selectable"><s:link href="/admin/person/" style="text-decoration: none;">Person</s:link></li>
+    <li class="spacer"></li>
+    <li class="selected"><span>Company</span></li>
+    <li class="last"></li>
+  </ul>
+</div>
+<!-- tab: END -->
+
+<div><html:messages id="msg" message="true"><bean:write name="msg" ignore="true"/></html:messages><html:errors/></div>
+
+	<s:form>
+		<html:hidden property="id"/>
+		<html:hidden property="mode"/>
+		<div class="form-table" style="margin-top:3px;">
+		<table>
+			<caption>Confirm Company Info</caption>
+			<tbody>
+                <tr>
+                    <th style="width: 150px;">Name</th>
+                    <td style="width: 200px;">${f:h(name)}<html:hidden property="name"/></td>
+                </tr>
+                <tr>
+                    <th>Name (Description)</th>
+                    <td>${f:h(nameDesc)}<html:hidden property="nameDesc"/></td>
+                </tr>
+                <tr>
+                    <th>Department</th>
+                    <td>${f:h(department)}<html:hidden property="department"/></td>
+                </tr>
+                <tr>
+                    <th>Postal Code</th>
+                    <td>${f:h(postalCode)}<html:hidden property="postalCode"/></td>
+                </tr>
+                <tr>
+                    <th>State</th>
+                    <td>${f:h(state)}<html:hidden property="state"/></td>
+                </tr>
+                <tr>
+                    <th>City</th>
+                    <td>${f:h(city)}<html:hidden property="city"/></td>
+                </tr>
+                <tr>
+                    <th>Street</th>
+                    <td>${f:h(street)}<html:hidden property="street"/></td>
+                </tr>
+                <tr>
+                    <th>Building/Others</th>
+                    <td>${f:h(building)}<html:hidden property="building"/></td>
+                </tr>
+                <tr>
+                    <th>Telephone 1</th>
+                    <td>${f:h(telephone1)}<html:hidden property="telephone1"/></td>
+                </tr>
+                <tr>
+                    <th>Telephone 2</th>
+                    <td>${f:h(telephone2)}<html:hidden property="telephone2"/></td>
+                </tr>
+                <tr>
+                    <th>FAX 1</th>
+                    <td>${f:h(fax1)}<html:hidden property="fax1"/></td>
+                </tr>
+                <tr>
+                    <th>FAX 2</th>
+                    <td>${f:h(fax2)}<html:hidden property="fax2"/></td>
+                </tr>
+                <tr>
+                    <th>URL</th>
+                    <td>${f:h(url)}<html:hidden property="url"/></td>
+                </tr>
+                <tr>
+                    <th>Public</th>
+                    <td>
+<c:if test="${isPublic=='T'}">Yes</c:if>
+<c:if test="${isPublic=='F'}">No</c:if>
+<html:hidden property="isPublic"/>
+					</td>
+                </tr>
+			</tbody>
+			<tfoot>
+				<tr>
+					<td colspan="2">
+        <c:if test="${mode == 1}">
+            <input type="submit" name="create" value="登録"/>
+            <input type="submit" name="editagain" value="戻る"/>
+        </c:if>
+        <c:if test="${mode == 2}">
+            <input type="submit" name="update" value="更新"/>
+            <input type="submit" name="editagain" value="戻る"/>
+        </c:if>
+        <c:if test="${mode == 3}">
+            <input type="submit" name="delete" value="削除"/>
+            <input type="submit" name="back" value="戻る"/>
+        </c:if>
+        <c:if test="${mode == 4}">
+            <input type="submit" name="back" value="戻る"/>
+            <input type="submit" name="editpagefromconfirm" value="編集"/>
+            <input type="submit" name="deletepagefromconfirm" value="削除"/>
+        </c:if>
+					</td>
+				</tr>
+			</tfoot>
+		</table>
+		</div>
+	</s:form>
+</div>
+
+</body>
+</html>


Property changes on: addresslist/trunk/src/main/webapp/WEB-INF/view/admin/company/confirm.jsp
___________________________________________________________________
Name: svn:eol-style
   + native

Added: addresslist/trunk/src/main/webapp/WEB-INF/view/admin/company/edit.jsp
===================================================================
--- addresslist/trunk/src/main/webapp/WEB-INF/view/admin/company/edit.jsp	                        (rev 0)
+++ addresslist/trunk/src/main/webapp/WEB-INF/view/admin/company/edit.jsp	2008-11-08 22:32:31 UTC (rev 1304)
@@ -0,0 +1,106 @@
+<%@page pageEncoding="UTF-8" contentType="text/html; charset=UTF-8" %>
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<title></title>
+</head>
+<body>
+<div style="padding:3px;">
+<!-- tab: BEGIN -->
+<div class="tab-nav">
+  <ul>
+    <li class="first"></li>
+    <li class="selectable"><s:link href="/admin/person/" style="text-decoration: none;">Person</s:link></li>
+    <li class="spacer"></li>
+    <li class="selected"><span>Company</span></li>
+    <li class="last"></li>
+  </ul>
+</div>
+<!-- tab: END -->
+
+<div><html:messages id="msg" message="true"><bean:write name="msg" ignore="true"/></html:messages><html:errors/></div>
+
+    <s:form>
+        <html:hidden property="id"/>
+        <html:hidden property="mode"/>
+        <div class="form-table" style="margin-top:3px;">
+		<table>
+            <caption>Edit Company Info</caption>
+            <tbody>
+                <tr>
+                    <th style="width: 150px;">Name</th>
+                    <td style="width: 200px;"><html:text property="name" size="20"/></td>
+                </tr>
+                <tr>
+                    <th>Name (Description)</th>
+                    <td><html:text property="nameDesc" size="20"/></td>
+                </tr>
+                <tr>
+                    <th>Department</th>
+                    <td><html:text property="department" size="20"/></td>
+                </tr>
+                <tr>
+                    <th>Postal Code</th>
+                    <td><html:text property="postalCode" size="20"/></td>
+                </tr>
+                <tr>
+                    <th>State</th>
+                    <td><html:text property="state" size="20"/></td>
+                </tr>
+                <tr>
+                    <th>City</th>
+                    <td><html:text property="city" size="20"/></td>
+                </tr>
+                <tr>
+                    <th>Street</th>
+                    <td><html:text property="street" size="20"/></td>
+                </tr>
+                <tr>
+                    <th>Building/Others</th>
+                    <td><html:text property="building" size="20"/></td>
+                </tr>
+                <tr>
+                    <th>Telephone 1</th>
+                    <td><html:text property="telephone1" size="20"/></td>
+                </tr>
+                <tr>
+                    <th>Telephone 2</th>
+                    <td><html:text property="telephone2" size="20"/></td>
+                </tr>
+                <tr>
+                    <th>FAX 1</th>
+                    <td><html:text property="fax1" size="20"/></td>
+                </tr>
+                <tr>
+                    <th>FAX 2</th>
+                    <td><html:text property="fax2" size="20"/></td>
+                </tr>
+                <tr>
+                    <th>URL</th>
+                    <td><html:text property="url" size="20"/></td>
+                </tr>
+                <tr>
+                    <th>Public</th>
+                    <td>
+						<html:select property="isPublic">
+							<html:option value="T">Yes</html:option>
+							<html:option value="F">No</html:option>
+						</html:select>
+					</td>
+                </tr>
+            </tbody>
+            <tfoot>
+                <tr>
+                    <td colspan="2">
+        <input type="submit" name="confirm" value="確認"/>
+        <input type="submit" name="back" value="戻る"/>
+                    </td>
+                </tr>
+            </tfoot>
+        </table>
+		</div>
+    </s:form>
+</div>
+
+</body>
+</html>


Property changes on: addresslist/trunk/src/main/webapp/WEB-INF/view/admin/company/edit.jsp
___________________________________________________________________
Name: svn:eol-style
   + native

Added: addresslist/trunk/src/main/webapp/WEB-INF/view/admin/company/error.jsp
===================================================================
--- addresslist/trunk/src/main/webapp/WEB-INF/view/admin/company/error.jsp	                        (rev 0)
+++ addresslist/trunk/src/main/webapp/WEB-INF/view/admin/company/error.jsp	2008-11-08 22:32:31 UTC (rev 1304)
@@ -0,0 +1,25 @@
+<%@page pageEncoding="UTF-8" %>
+<html>
+<head>
+<title></title>
+</head>
+<body>
+<div style="padding:3px;">
+<!-- tab: BEGIN -->
+<div class="tab-nav">
+  <ul>
+    <li class="first"></li>
+    <li class="selectable"><s:link href="/admin/person/" style="text-decoration: none;">Person</s:link></li>
+    <li class="spacer"></li>
+    <li class="selected"><span>Company</span></li>
+    <li class="last"></li>
+  </ul>
+</div>
+<!-- tab: END -->
+
+<html:errors/>
+<br>
+<s:link href="index">戻る</s:link>
+</div>
+</body>
+</html>


Property changes on: addresslist/trunk/src/main/webapp/WEB-INF/view/admin/company/error.jsp
___________________________________________________________________
Name: svn:eol-style
   + native

Added: addresslist/trunk/src/main/webapp/WEB-INF/view/admin/company/index.jsp
===================================================================
--- addresslist/trunk/src/main/webapp/WEB-INF/view/admin/company/index.jsp	                        (rev 0)
+++ addresslist/trunk/src/main/webapp/WEB-INF/view/admin/company/index.jsp	2008-11-08 22:32:31 UTC (rev 1304)
@@ -0,0 +1,82 @@
+<%@page pageEncoding="UTF-8" contentType="text/html; charset=UTF-8" %>
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<title></title>
+</head>
+<body>
+<div style="padding:3px;">
+<!-- tab: BEGIN -->
+<div class="tab-nav">
+  <ul>
+    <li class="first"></li>
+    <li class="selectable"><s:link href="/admin/person/" style="text-decoration: none;">Person</s:link></li>
+    <li class="spacer"></li>
+    <li class="selected"><span>Company</span></li>
+    <li class="last"></li>
+  </ul>
+</div>
+<!-- tab: END -->
+
+<div><html:messages id="msg" message="true"><bean:write name="msg" ignore="true"/></html:messages><html:errors/></div>
+
+<div class="list-table" style="margin-top:3px;">
+<div>
+<s:link href="createpage">Create New Company</s:link>
+</div>
+<table border="1">
+	<thead>
+		<tr>
+			<th style="width:200px;text-align: center;">Name</th>
+			<th style="width:200px;text-align: center;">Department</th>
+			<th style="width:100px;text-align: center;">&nbsp;</th>
+		</tr>
+	</thead>
+	<tbody>
+		<c:forEach var="c" varStatus="s" items="${companyItems}">
+		<tr class="${s.index %2 == 0 ? 'row1' : 'row2'}">
+			<td><s:link href="confirmpage/4/${f:u(c.id)}">${f:h(c.name)}</s:link></td>
+			<td>${f:h(c.department)}</td>
+			<td align="center">
+				<s:link href="editpage/2/${f:u(c.id)}">Edit</s:link>
+				<s:link href="deletepage/3/${f:u(c.id)}">Delete</s:link>
+			</td>
+		</tr>
+		</c:forEach>
+	</tbody>
+</table>
+<!-- page navi -->
+<div style="width: 450px;text-align: center;">
+	<span>
+		<c:if test="${companyPager.existPrePage}">
+		<s:link href="list/${companyPager.currentPageNumber - 1}">前へ</s:link>
+		</c:if>
+	</span>
+	<span>
+		<c:forEach var="p" varStatus="s" items="${companyPager.pageNumberList}">
+		<span>
+			<c:if test="${p == companyPager.currentPageNumber}">
+			${p}
+			</c:if>
+			<c:if test="${p != companyPager.currentPageNumber}">
+			<s:link href="list/${p}">${p}</s:link>
+			</c:if>
+		</span>
+		</c:forEach>
+	</span>
+	<span>
+		<c:if test="${companyPager.existNextPage}">
+		<s:link href="list/${companyPager.currentPageNumber + 1}">次へ</s:link>
+		</c:if>
+	</span>
+</div>
+<div style="width: 450px;text-align: center;">
+	<span>
+		${companyPager.currentPageNumber}/${companyPager.allPageCount} (${companyPager.allRecordCount})
+	</span>
+</div>
+</div>
+</div>
+
+</body>
+</html>


Property changes on: addresslist/trunk/src/main/webapp/WEB-INF/view/admin/company/index.jsp
___________________________________________________________________
Name: svn:eol-style
   + native

Added: addresslist/trunk/src/main/webapp/WEB-INF/view/admin/person/confirm.jsp
===================================================================
--- addresslist/trunk/src/main/webapp/WEB-INF/view/admin/person/confirm.jsp	                        (rev 0)
+++ addresslist/trunk/src/main/webapp/WEB-INF/view/admin/person/confirm.jsp	2008-11-08 22:32:31 UTC (rev 1304)
@@ -0,0 +1,289 @@
+<%@page pageEncoding="UTF-8" contentType="text/html; charset=UTF-8" %>
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<title></title>
+</head>
+<body>
+<div style="padding:3px;">
+<!-- tab: BEGIN -->
+<div class="tab-nav">
+  <ul>
+    <li class="first"></li>
+    <li class="selected"><span>Person</span></li>
+    <li class="spacer"></li>
+    <li class="selectable"><s:link href="/admin/company/" style="text-decoration: none;">Company</s:link></li>
+    <li class="last"></li>
+  </ul>
+</div>
+<!-- tab: END -->
+
+<div><html:messages id="msg" message="true"><bean:write name="msg" ignore="true"/></html:messages><html:errors/></div>
+
+<s:form>
+<html:hidden property="id"/>
+<html:hidden property="mode"/>
+<div class="form-table" style="margin-top:3px;">
+<table>
+	<caption>Address Info</caption>
+	<tbody>
+		<tr>
+			<th style="width: 100px;">Person</th>
+			<td>
+		<table>
+            <tbody>
+                <tr>
+                    <th style="width: 150px;">Family Name</th>
+                    <td style="width: 200px;">${f:h(familyName)}<html:hidden property="familyName"/></td>
+                </tr>
+                <tr>
+                    <th>Family Name (Description)</th>
+                    <td>${f:h(familyNameDesc)}<html:hidden property="familyNameDesc"/></td>
+                </tr>
+                <tr>
+                    <th style="width: 120px;">Given Name</th>
+                    <td>${f:h(givenName)}<html:hidden property="givenName"/></td>
+                </tr>
+                <tr>
+                    <th>Given Name (Description)</th>
+                    <td>${f:h(givenNameDesc)}<html:hidden property="givenNameDesc"/></td>
+                </tr>
+                <tr>
+                    <th>Middle name</th>
+                    <td>${f:h(middleName)}<html:hidden property="middleName"/></td>
+                </tr>
+                <tr>
+                    <th>Name Prefix</th>
+                    <td>${f:h(namePrefix)}<html:hidden property="namePrefix"/></td>
+                </tr>
+                <tr>
+                    <th>Name Suffix</th>
+                    <td>${f:h(nameSuffix)}<html:hidden property="nameSuffix"/></td>
+                </tr>
+                <tr>
+                    <th>Nickname</th>
+                    <td>${f:h(nickname)}<html:hidden property="nickname"/></td>
+                </tr>
+                <tr>
+                    <th>Job Title</th>
+                    <td>${f:h(jobTitle)}<html:hidden property="jobTitle"/></td>
+                </tr>
+                <tr>
+                    <th>Public</th>
+                    <td>
+<c:if test="${isPublic=='T'}">Yes</c:if>
+<c:if test="${isPublic=='F'}">No</c:if>
+<html:hidden property="isPublic"/>
+					</td>
+                </tr>
+            </tbody>
+        </table>
+			</td>
+		</tr>
+		<tr>
+			<th>Contact</th>
+			<td>
+<table>
+	<tbody>
+		<tr>
+			<th style="width: 150px;">Telephone (Home)</th>
+			<td style="width: 200px;">${f:h(homeTelephone)}<html:hidden property="homeTelephone"/></td>
+		</tr>
+		<tr>
+			<th>Cell Phone (Home)</th>
+			<td>${f:h(homeCellphone)}<html:hidden property="homeCellphone"/></td>
+		</tr>
+		<tr>
+			<th>Email (Home PC)</th>
+			<td>${f:h(homeEmailPC)}<html:hidden property="homeEmailPC"/></td>
+		</tr>
+		<tr>
+			<th>Email (Home Mobile)</th>
+			<td>${f:h(homeEmailMobile)}<html:hidden property="homeEmailMobile"/></td>
+		</tr>
+		<tr>
+			<th>FAX (Home)</th>
+			<td>${f:h(homeFax)}<html:hidden property="homeFax"/></td>
+		</tr>
+		<tr>
+			<th>Telephone (Business)</th>
+			<td>${f:h(businessTelephone)}<html:hidden property="businessTelephone"/></td>
+		</tr>
+		<tr>
+			<th>Cell Phone (Business)</th>
+			<td>${f:h(businessCellphone)}<html:hidden property="businessCellphone"/></td>
+		</tr>
+		<tr>
+			<th>Email (Business PC)</th>
+			<td>${f:h(businessEmailPC)}<html:hidden property="businessEmailPC"/></td>
+		</tr>
+		<tr>
+			<th>Email (Business Mobile)</th>
+			<td>${f:h(businessEmailMobile)}<html:hidden property="businessEmailMobile"/></td>
+		</tr>
+		<tr>
+			<th>FAX (Business)</th>
+			<td>${f:h(businessFax)}<html:hidden property="businessFax"/></td>
+		</tr>
+	</tbody>
+</table>
+			</td>
+		</tr>
+		<tr>
+			<th>Home</th>
+			<td>
+<table>
+	<tbody>
+		<tr>
+			<th style="width: 150px;">Postal Code</th>
+			<td style="width: 200px;">${f:h(postalCode)}<html:hidden property="postalCode"/></td>
+		</tr>
+		<tr>
+			<th>State</th>
+			<td>${f:h(state)}<html:hidden property="state"/></td>
+		</tr>
+		<tr>
+			<th>City</th>
+			<td>${f:h(city)}<html:hidden property="city"/></td>
+		</tr>
+		<tr>
+			<th>Street</th>
+			<td>${f:h(street)}<html:hidden property="street"/></td>
+		</tr>
+		<tr>
+			<th>Building/Others</th>
+			<td>${f:h(building)}<html:hidden property="building"/></td>
+		</tr>
+	</tbody>
+</table>
+			</td>
+		</tr>
+		<tr>
+			<th>Company</th>
+			<td>
+<html:hidden property="companyId"/>
+<c:if test="${company!=null}">
+<table>
+	<caption>Confirmation of Company</caption>
+	<tbody>
+		<tr>
+			<th style="width: 150px;">Name</th>
+			<td style="width: 200px;">${f:h(company.name)}</td>
+		</tr>
+		<tr>
+			<th>Name Description</th>
+			<td>${f:h(company.nameDesc)}</td>
+		</tr>
+		<tr>
+			<th>Department</th>
+			<td>${f:h(company.department)}</td>
+		</tr>
+		<tr>
+			<th>Postal Code</th>
+			<td>${f:h(company.postalCode)}</td>
+		</tr>
+		<tr>
+			<th>State</th>
+			<td>${f:h(company.state)}</td>
+		</tr>
+		<tr>
+			<th>City</th>
+			<td>${f:h(company.city)}</td>
+		</tr>
+		<tr>
+			<th>Street</th>
+			<td>${f:h(company.street)}</td>
+		</tr>
+		<tr>
+			<th>Building/Others</th>
+			<td>${f:h(company.building)}</td>
+		</tr>
+		<tr>
+			<th>Telephone 1</th>
+			<td>${f:h(company.telephone1)}</td>
+		</tr>
+		<tr>
+			<th>Telephone 2</th>
+			<td>${f:h(company.telephone2)}</td>
+		</tr>
+		<tr>
+			<th>FAX 1</th>
+			<td>${f:h(company.fax1)}</td>
+		</tr>
+		<tr>
+			<th>FAX 2</th>
+			<td>${f:h(company.fax2)}</td>
+		</tr>
+		<tr>
+			<th>URL</th>
+			<td>${f:h(company.url)}</td>
+		</tr>
+		<tr>
+			<th>Public</th>
+			<td>
+<c:if test="${company.isPublic=='T'}">Yes</c:if>
+<c:if test="${company.isPublic=='F'}">No</c:if>
+			</td>
+		</tr>
+	</tbody>
+</table>
+</c:if>
+			</td>
+		</tr>
+		<tr>
+			<th>Custom</th>
+			<td>
+<table>
+	<tbody>
+		<tr>
+			<th style="width: 150px;">Custom 1</th>
+			<td style="width: 200px;">${f:h(customData1)}<html:hidden property="customData1"/></td>
+		</tr>
+		<tr>
+			<th>Custom 2</th>
+			<td>${f:h(customData2)}<html:hidden property="customData2"/></td>
+		</tr>
+		<tr>
+			<th>Custom 3</th>
+			<td>${f:h(customData3)}<html:hidden property="customData3"/></td>
+		</tr>
+		<tr>
+			<th>Custom 4</th>
+			<td>${f:h(customData4)}<html:hidden property="customData4"/></td>
+		</tr>
+	</tbody>
+</table>
+			</td>
+		</tr>
+	</tbody>
+	<tfoot>
+		<tr>
+			<td colspan="2">
+        <c:if test="${mode == 1}">
+            <input type="submit" name="create" value="登録"/>
+            <input type="submit" name="editagain" value="戻る"/>
+        </c:if>
+        <c:if test="${mode == 2}">
+            <input type="submit" name="update" value="更新"/>
+            <input type="submit" name="editagain" value="戻る"/>
+        </c:if>
+        <c:if test="${mode == 3}">
+            <input type="submit" name="delete" value="削除"/>
+            <input type="submit" name="back" value="戻る"/>
+        </c:if>
+        <c:if test="${mode == 4}">
+            <input type="submit" name="back" value="戻る"/>
+            <input type="submit" name="editpagefromconfirm" value="編集"/>
+            <input type="submit" name="deletepagefromconfirm" value="削除"/>
+        </c:if>
+			</td>
+		</tr>
+	</tfoot>
+</table>
+</div>
+</s:form>
+
+</div>
+
+</body>
+</html>


Property changes on: addresslist/trunk/src/main/webapp/WEB-INF/view/admin/person/confirm.jsp
___________________________________________________________________
Name: svn:eol-style
   + native

Added: addresslist/trunk/src/main/webapp/WEB-INF/view/admin/person/edit.jsp
===================================================================
--- addresslist/trunk/src/main/webapp/WEB-INF/view/admin/person/edit.jsp	                        (rev 0)
+++ addresslist/trunk/src/main/webapp/WEB-INF/view/admin/person/edit.jsp	2008-11-08 22:32:31 UTC (rev 1304)
@@ -0,0 +1,213 @@
+<%@page pageEncoding="UTF-8" contentType="text/html; charset=UTF-8" %>
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<title></title>
+</head>
+<body>
+<div style="padding:3px;">
+<!-- tab: BEGIN -->
+<div class="tab-nav">
+  <ul>
+    <li class="first"></li>
+    <li class="selected"><span>Person</span></li>
+    <li class="spacer"></li>
+    <li class="selectable"><s:link href="/admin/company/" style="text-decoration: none;">Company</s:link></li>
+    <li class="last"></li>
+  </ul>
+</div>
+<!-- tab: END -->
+
+<div><html:messages id="msg" message="true"><bean:write name="msg" ignore="true"/></html:messages><html:errors/></div>
+
+<s:form>
+<html:hidden property="id"/>
+<html:hidden property="mode"/>
+<div class="form-table" style="margin-top:3px;">
+<table>
+	<caption>Address Info</caption>
+	<tbody>
+		<tr>
+			<th style="width: 100px;">Person</th>
+			<td>
+		<table>
+            <tbody>
+                <tr>
+                    <th style="width: 150px;">Family Name</th>
+                    <td style="width: 200px;"><html:text property="familyName" size="20"/></td>
+                </tr>
+                <tr>
+                    <th>Family Name (Description)</th>
+                    <td><html:text property="familyNameDesc" size="20"/></td>
+                </tr>
+                <tr>
+                    <th style="width: 120px;">Given Name</th>
+                    <td><html:text property="givenName" size="20"/></td>
+                </tr>
+                <tr>
+                    <th>Given Name (Description)</th>
+                    <td><html:text property="givenNameDesc" size="20"/></td>
+                </tr>
+                <tr>
+                    <th>Middle name</th>
+                    <td><html:text property="middleName" size="20"/></td>
+                </tr>
+                <tr>
+                    <th>Name Prefix</th>
+                    <td><html:text property="namePrefix" size="20"/></td>
+                </tr>
+                <tr>
+                    <th>Name Suffix</th>
+                    <td><html:text property="nameSuffix" size="20"/></td>
+                </tr>
+                <tr>
+                    <th>Nickname</th>
+                    <td><html:text property="nickname" size="20"/></td>
+                </tr>
+                <tr>
+                    <th>Job Title</th>
+                    <td><html:text property="jobTitle" size="20"/></td>
+                </tr>
+                <tr>
+                    <th>Public</th>
+                    <td>
+						<html:select property="isPublic">
+							<html:option value="T">Yes</html:option>
+							<html:option value="F">No</html:option>
+						</html:select>
+					</td>
+                </tr>
+            </tbody>
+        </table>
+			</td>
+		</tr>
+		<tr>
+			<th>Contact</th>
+			<td>
+<table>
+	<tbody>
+		<tr>
+			<th style="width: 150px;">Telephone (Home)</th>
+			<td style="width: 200px;"><html:text property="homeTelephone" size="20"/></td>
+		</tr>
+		<tr>
+			<th>Cell Phone (Home)</th>
+			<td><html:text property="homeCellphone" size="20"/></td>
+		</tr>
+		<tr>
+			<th>Email (Home PC)</th>
+			<td><html:text property="homeEmailPC" size="20"/></td>
+		</tr>
+		<tr>
+			<th>Email (Home Mobile)</th>
+			<td><html:text property="homeEmailMobile" size="20"/></td>
+		</tr>
+		<tr>
+			<th>FAX (Home)</th>
+			<td><html:text property="homeFax" size="20"/></td>
+		</tr>
+		<tr>
+			<th>Telephone(Business)</th>
+			<td><html:text property="businessTelephone" size="20"/></td>
+		</tr>
+		<tr>
+			<th>Cell Phone(Business)</th>
+			<td><html:text property="businessCellphone" size="20"/></td>
+		</tr>
+		<tr>
+			<th>Email(Business PC)</th>
+			<td><html:text property="businessEmailPC" size="20"/></td>
+		</tr>
+		<tr>
+			<th>Email(Business Mobile)</th>
+			<td><html:text property="businessEmailMobile" size="20"/></td>
+		</tr>
+		<tr>
+			<th>FAX(Business)</th>
+			<td><html:text property="businessFax" size="20"/></td>
+		</tr>
+	</tbody>
+</table>
+			</td>
+		</tr>
+		<tr>
+			<th>Home</th>
+			<td>
+<table>
+	<tbody>
+		<tr>
+			<th style="width: 150px;">Postal Code</th>
+			<td style="width: 200px;"><html:text property="postalCode" size="20"/></td>
+		</tr>
+		<tr>
+			<th>State</th>
+			<td><html:text property="state" size="20"/></td>
+		</tr>
+		<tr>
+			<th>City</th>
+			<td><html:text property="city" size="20"/></td>
+		</tr>
+		<tr>
+			<th>Street</th>
+			<td><html:text property="street" size="20"/></td>
+		</tr>
+		<tr>
+			<th>Building/Others</th>
+			<td><html:text property="building" size="20"/></td>
+		</tr>
+	</tbody>
+</table>
+			</td>
+		</tr>
+		<tr>
+			<th>Company</th>
+			<td>
+<html:select property="companyId">
+<option value="">None</option>
+	<c:forEach var="c" varStatus="s" items="${companyItems}">
+		<html:option value="${f:h(c.id)}">${f:h(c.name)}</html:option>
+	</c:forEach>
+</html:select>
+			</td>
+		</tr>
+		<tr>
+			<th>Custom</th>
+			<td>
+<table>
+	<tbody>
+		<tr>
+			<th style="width: 150px;">Custom 1</th>
+			<td style="width: 200px;"><html:text property="customData1" size="20"/></td>
+		</tr>
+		<tr>
+			<th>Custom 2</th>
+			<td><html:text property="customData2" size="20"/></td>
+		</tr>
+		<tr>
+			<th>Custom 3</th>
+			<td><html:text property="customData3" size="20"/></td>
+		</tr>
+		<tr>
+			<th>Custom 4</th>
+			<td><html:text property="customData4" size="20"/></td>
+		</tr>
+	</tbody>
+</table>
+			</td>
+		</tr>
+	</tbody>
+	<tfoot>
+		<tr>
+			<td colspan="2">
+				<input type="submit" name="confirm" value="確認"/>
+				<input type="submit" name="back" value="戻る"/>
+			</td>
+		</tr>
+	</tfoot>
+</table>
+</div>
+</s:form>
+</div>
+
+</body>
+</html>


Property changes on: addresslist/trunk/src/main/webapp/WEB-INF/view/admin/person/edit.jsp
___________________________________________________________________
Name: svn:eol-style
   + native

Added: addresslist/trunk/src/main/webapp/WEB-INF/view/admin/person/error.jsp
===================================================================
--- addresslist/trunk/src/main/webapp/WEB-INF/view/admin/person/error.jsp	                        (rev 0)
+++ addresslist/trunk/src/main/webapp/WEB-INF/view/admin/person/error.jsp	2008-11-08 22:32:31 UTC (rev 1304)
@@ -0,0 +1,25 @@
+<%@page pageEncoding="UTF-8" %>
+<html>
+<head>
+<title></title>
+</head>
+<body>
+<div style="padding:3px;">
+<!-- tab: BEGIN -->
+<div class="tab-nav">
+  <ul>
+    <li class="first"></li>
+    <li class="selected"><span>Person</span></li>
+    <li class="spacer"></li>
+    <li class="selectable"><s:link href="/admin/company/" style="text-decoration: none;">Company</s:link></li>
+    <li class="last"></li>
+  </ul>
+</div>
+<!-- tab: END -->
+
+<html:errors/>
+<br>
+<s:link href="index">戻る</s:link>
+</div>
+</body>
+</html>


Property changes on: addresslist/trunk/src/main/webapp/WEB-INF/view/admin/person/error.jsp
___________________________________________________________________
Name: svn:eol-style
   + native

Added: addresslist/trunk/src/main/webapp/WEB-INF/view/admin/person/index.jsp
===================================================================
--- addresslist/trunk/src/main/webapp/WEB-INF/view/admin/person/index.jsp	                        (rev 0)
+++ addresslist/trunk/src/main/webapp/WEB-INF/view/admin/person/index.jsp	2008-11-08 22:32:31 UTC (rev 1304)
@@ -0,0 +1,82 @@
+<%@page pageEncoding="UTF-8" contentType="text/html; charset=UTF-8" %>
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<title></title>
+</head>
+<body>
+<div style="padding:3px;">
+<!-- tab: BEGIN -->
+<div class="tab-nav">
+  <ul>
+    <li class="first"></li>
+    <li class="selected"><span>Person</span></li>
+    <li class="spacer"></li>
+    <li class="selectable"><s:link href="/admin/company/" style="text-decoration: none;">Company</s:link></li>
+    <li class="last"></li>
+  </ul>
+</div>
+<!-- tab: END -->
+
+<div><html:messages id="msg" message="true"><bean:write name="msg" ignore="true"/></html:messages><html:errors/></div>
+
+<div class="list-table" style="margin-top:3px;">
+<div>
+<s:link href="createpage">Create New Person</s:link>
+</div>
+<table border="1">
+	<thead>
+		<tr>
+			<th style="width:150px;text-align: center;">Name</th>
+			<th style="width:200px;text-align: center;">Company</th>
+			<th style="width:100px;text-align: center;">&nbsp;</th>
+		</tr>
+	</thead>
+	<tbody>
+		<c:forEach var="p" varStatus="s" items="${personItems}">
+		<tr class="${s.index %2 == 0 ? 'row1' : 'row2'}">
+			<td><s:link href="confirmpage/4/${f:u(p.id)}">${f:h(p.familyName)} ${f:h(p.givenName)}</s:link></td>
+			<td>${f:h(p.company.name)}</td>
+			<td align="center">
+				<s:link href="editpage/2/${f:u(p.id)}">Edit</s:link>
+				<s:link href="deletepage/3/${f:u(p.id)}">Delete</s:link>
+			</td>
+		</tr>
+		</c:forEach>
+	</tbody>
+</table>
+<!-- page navi -->
+<div style="width: 450px;text-align: center;">
+	<span>
+		<c:if test="${personPager.existPrePage}">
+		<s:link href="list/${personPager.currentPageNumber - 1}">前へ</s:link>
+		</c:if>
+	</span>
+	<span>
+		<c:forEach var="p" varStatus="s" items="${personPager.pageNumberList}">
+		<span>
+			<c:if test="${p == personPager.currentPageNumber}">
+			${p}
+			</c:if>
+			<c:if test="${p != personPager.currentPageNumber}">
+			<s:link href="list/${p}">${p}</s:link>
+			</c:if>
+		</span>
+		</c:forEach>
+	</span>
+	<span>
+		<c:if test="${personPager.existNextPage}">
+		<s:link href="list/${personPager.currentPageNumber + 1}">次へ</s:link>
+		</c:if>
+	</span>
+</div>
+<div style="width: 450px;text-align: center;">
+	<span>
+		${personPager.currentPageNumber}/${personPager.allPageCount} (${personPager.allRecordCount})
+	</span>
+</div>
+</div>
+</div>
+
+</body>
+</html>


Property changes on: addresslist/trunk/src/main/webapp/WEB-INF/view/admin/person/index.jsp
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: addresslist/trunk/src/main/webapp/WEB-INF/view/user/company/confirm.jsp
===================================================================
--- addresslist/trunk/src/main/webapp/WEB-INF/view/user/company/confirm.jsp	2008-11-07 23:42:09 UTC (rev 1303)
+++ addresslist/trunk/src/main/webapp/WEB-INF/view/user/company/confirm.jsp	2008-11-08 22:32:31 UTC (rev 1304)
@@ -24,15 +24,15 @@
 		<html:hidden property="id"/>
 		<html:hidden property="mode"/>
 		<div class="form-table" style="margin-top:3px;">
-		<table style="width: 400px;">
+		<table>
 			<caption>Confirm Company Info</caption>
 			<tbody>
                 <tr>
-                    <th style="width: 120px;">Name</th>
-                    <td>${f:h(name)}<html:hidden property="name"/></td>
+                    <th style="width: 150px;">Name</th>
+                    <td style="width: 200px;">${f:h(name)}<html:hidden property="name"/></td>
                 </tr>
                 <tr>
-                    <th>Name Description</th>
+                    <th>Name (Description)</th>
                     <td>${f:h(nameDesc)}<html:hidden property="nameDesc"/></td>
                 </tr>
                 <tr>

Modified: addresslist/trunk/src/main/webapp/WEB-INF/view/user/company/edit.jsp
===================================================================
--- addresslist/trunk/src/main/webapp/WEB-INF/view/user/company/edit.jsp	2008-11-07 23:42:09 UTC (rev 1303)
+++ addresslist/trunk/src/main/webapp/WEB-INF/view/user/company/edit.jsp	2008-11-08 22:32:31 UTC (rev 1304)
@@ -24,15 +24,15 @@
         <html:hidden property="id"/>
         <html:hidden property="mode"/>
         <div class="form-table" style="margin-top:3px;">
-		<table style="width: 400px;">
+		<table>
             <caption>Edit Company Info</caption>
             <tbody>
                 <tr>
-                    <th style="width: 120px;">Name</th>
-                    <td><html:text property="name" size="20"/></td>
+                    <th style="width: 150px;">Name</th>
+                    <td style="width: 200px;"><html:text property="name" size="20"/></td>
                 </tr>
                 <tr>
-                    <th>Name Description</th>
+                    <th>Name (Description)</th>
                     <td><html:text property="nameDesc" size="20"/></td>
                 </tr>
                 <tr>

Modified: addresslist/trunk/src/main/webapp/WEB-INF/view/user/person/confirm.jsp
===================================================================
--- addresslist/trunk/src/main/webapp/WEB-INF/view/user/person/confirm.jsp	2008-11-07 23:42:09 UTC (rev 1303)
+++ addresslist/trunk/src/main/webapp/WEB-INF/view/user/person/confirm.jsp	2008-11-08 22:32:31 UTC (rev 1304)
@@ -28,16 +28,16 @@
 	<caption>Address Info</caption>
 	<tbody>
 		<tr>
-			<th>Person</th>
+			<th style="width: 100px;">Person</th>
 			<td>
 		<table>
             <tbody>
                 <tr>
-                    <th style="width: 120px;">Family Name</th>
-                    <td>${f:h(familyName)}<html:hidden property="familyName"/></td>
+                    <th style="width: 150px;">Family Name</th>
+                    <td style="width: 200px;">${f:h(familyName)}<html:hidden property="familyName"/></td>
                 </tr>
                 <tr>
-                    <th>Family Name(Description)</th>
+                    <th>Family Name (Description)</th>
                     <td>${f:h(familyNameDesc)}<html:hidden property="familyNameDesc"/></td>
                 </tr>
                 <tr>
@@ -45,7 +45,7 @@
                     <td>${f:h(givenName)}<html:hidden property="givenName"/></td>
                 </tr>
                 <tr>
-                    <th>Given Name(Description)</th>
+                    <th>Given Name (Description)</th>
                     <td>${f:h(givenNameDesc)}<html:hidden property="givenNameDesc"/></td>
                 </tr>
                 <tr>
@@ -86,43 +86,43 @@
 <table>
 	<tbody>
 		<tr>
-			<th style="width: 120px;">Telephone(Home)</th>
-			<td>${f:h(homeTelephone)}<html:hidden property="homeTelephone"/></td>
+			<th style="width: 150px;">Telephone (Home)</th>
+			<td style="width: 200px;">${f:h(homeTelephone)}<html:hidden property="homeTelephone"/></td>
 		</tr>
 		<tr>
-			<th>Cell Phone(Home)</th>
+			<th>Cell Phone (Home)</th>
 			<td>${f:h(homeCellphone)}<html:hidden property="homeCellphone"/></td>
 		</tr>
 		<tr>
-			<th>Email(Home PC)</th>
+			<th>Email (Home PC)</th>
 			<td>${f:h(homeEmailPC)}<html:hidden property="homeEmailPC"/></td>
 		</tr>
 		<tr>
-			<th>Email(Home Mobile)</th>
+			<th>Email (Home Mobile)</th>
 			<td>${f:h(homeEmailMobile)}<html:hidden property="homeEmailMobile"/></td>
 		</tr>
 		<tr>
-			<th>FAX(Home)</th>
+			<th>FAX (Home)</th>
 			<td>${f:h(homeFax)}<html:hidden property="homeFax"/></td>
 		</tr>
 		<tr>
-			<th>Telephone(Business)</th>
+			<th>Telephone (Business)</th>
 			<td>${f:h(businessTelephone)}<html:hidden property="businessTelephone"/></td>
 		</tr>
 		<tr>
-			<th>Cell Phone(Business)</th>
+			<th>Cell Phone (Business)</th>
 			<td>${f:h(businessCellphone)}<html:hidden property="businessCellphone"/></td>
 		</tr>
 		<tr>
-			<th>Email(Business PC)</th>
+			<th>Email (Business PC)</th>
 			<td>${f:h(businessEmailPC)}<html:hidden property="businessEmailPC"/></td>
 		</tr>
 		<tr>
-			<th>Email(Business Mobile)</th>
+			<th>Email (Business Mobile)</th>
 			<td>${f:h(businessEmailMobile)}<html:hidden property="businessEmailMobile"/></td>
 		</tr>
 		<tr>
-			<th>FAX(Business)</th>
+			<th>FAX (Business)</th>
 			<td>${f:h(businessFax)}<html:hidden property="businessFax"/></td>
 		</tr>
 	</tbody>
@@ -135,8 +135,8 @@
 <table>
 	<tbody>
 		<tr>
-			<th style="width: 120px;">Postal Code</th>
-			<td>${f:h(postalCode)}<html:hidden property="postalCode"/></td>
+			<th style="width: 150px;">Postal Code</th>
+			<td style="width: 200px;">${f:h(postalCode)}<html:hidden property="postalCode"/></td>
 		</tr>
 		<tr>
 			<th>State</th>
@@ -163,12 +163,12 @@
 			<td>
 <html:hidden property="companyId"/>
 <c:if test="${company!=null}">
-<table style="width: 400px;">
+<table>
 	<caption>Confirmation of Company</caption>
 	<tbody>
 		<tr>
-			<th style="width: 120px;">Name</th>
-			<td>${f:h(company.name)}</td>
+			<th style="width: 150px;">Name</th>
+			<td style="width: 200px;">${f:h(company.name)}</td>
 		</tr>
 		<tr>
 			<th>Name Description</th>
@@ -236,8 +236,8 @@
 <table>
 	<tbody>
 		<tr>
-			<th style="width: 120px;">Custom 1</th>
-			<td>${f:h(customData1)}<html:hidden property="customData1"/></td>
+			<th style="width: 150px;">Custom 1</th>
+			<td style="width: 200px;">${f:h(customData1)}<html:hidden property="customData1"/></td>
 		</tr>
 		<tr>
 			<th>Custom 2</th>

Modified: addresslist/trunk/src/main/webapp/WEB-INF/view/user/person/edit.jsp
===================================================================
--- addresslist/trunk/src/main/webapp/WEB-INF/view/user/person/edit.jsp	2008-11-07 23:42:09 UTC (rev 1303)
+++ addresslist/trunk/src/main/webapp/WEB-INF/view/user/person/edit.jsp	2008-11-08 22:32:31 UTC (rev 1304)
@@ -28,16 +28,16 @@
 	<caption>Address Info</caption>
 	<tbody>
 		<tr>
-			<th>Person</th>
+			<th style="width: 100px;">Person</th>
 			<td>
 		<table>
             <tbody>
                 <tr>
-                    <th style="width: 120px;">Family Name</th>
-                    <td><html:text property="familyName" size="20"/></td>
+                    <th style="width: 150px;">Family Name</th>
+                    <td style="width: 200px;"><html:text property="familyName" size="20"/></td>
                 </tr>
                 <tr>
-                    <th>Family Name(Description)</th>
+                    <th>Family Name (Description)</th>
                     <td><html:text property="familyNameDesc" size="20"/></td>
                 </tr>
                 <tr>
@@ -45,7 +45,7 @@
                     <td><html:text property="givenName" size="20"/></td>
                 </tr>
                 <tr>
-                    <th>Given Name(Description)</th>
+                    <th>Given Name (Description)</th>
                     <td><html:text property="givenNameDesc" size="20"/></td>
                 </tr>
                 <tr>
@@ -87,23 +87,23 @@
 <table>
 	<tbody>
 		<tr>
-			<th style="width: 120px;">Telephone(Home)</th>
-			<td><html:text property="homeTelephone" size="20"/></td>
+			<th style="width: 150px;">Telephone (Home)</th>
+			<td style="width: 200px;"><html:text property="homeTelephone" size="20"/></td>
 		</tr>
 		<tr>
-			<th>Cell Phone(Home)</th>
+			<th>Cell Phone (Home)</th>
 			<td><html:text property="homeCellphone" size="20"/></td>
 		</tr>
 		<tr>
-			<th>Email(Home PC)</th>
+			<th>Email (Home PC)</th>
 			<td><html:text property="homeEmailPC" size="20"/></td>
 		</tr>
 		<tr>
-			<th>Email(Home Mobile)</th>
+			<th>Email (Home Mobile)</th>
 			<td><html:text property="homeEmailMobile" size="20"/></td>
 		</tr>
 		<tr>
-			<th>FAX(Home)</th>
+			<th>FAX (Home)</th>
 			<td><html:text property="homeFax" size="20"/></td>
 		</tr>
 		<tr>
@@ -136,8 +136,8 @@
 <table>
 	<tbody>
 		<tr>
-			<th style="width: 120px;">Postal Code</th>
-			<td><html:text property="postalCode" size="20"/></td>
+			<th style="width: 150px;">Postal Code</th>
+			<td style="width: 200px;"><html:text property="postalCode" size="20"/></td>
 		</tr>
 		<tr>
 			<th>State</th>
@@ -176,8 +176,8 @@
 <table>
 	<tbody>
 		<tr>
-			<th style="width: 120px;">Custom 1</th>
-			<td><html:text property="customData1" size="20"/></td>
+			<th style="width: 150px;">Custom 1</th>
+			<td style="width: 200px;"><html:text property="customData1" size="20"/></td>
 		</tr>
 		<tr>
 			<th>Custom 2</th>


pal-cvs メーリングリストの案内
Back to archive index