�������Ԃ�Web�A�v��������uStruts 2�v����


�y���W�zStruts�́g2�h���g���΁A�T���ł��K����

���X�_�l�b�g���[�N
�֐� ���q
2009/1/8


Struts�Ɂg2�h�����݂��邱�Ƃ�m���Ă܂������H


����̎�ȓ��e

�E Struts�Ɂg2�h�����݂��邱�Ƃ�m���Ă܂������H
�E �R�����@�u�T�����m�肽��Struts 2�̋^��v

�E Struts 2���C���X�g�[�����Ă݂悤

�E ���i�����Ɓj�����ԂɁu����ɂ��́I Struts 2�v
�E �u����ɂ��́I Struts 2�v�̓��쌴��
�E 4��ނ�Result�A�m�e�[�V�������g��������
�E �R�����@�u������OGNL�Ƃ́H�v
�E ���ݓI�ȉ”\�����߂�Struts 2

�@Struts�t���[�����[�N�̓o��ɂ��AJava�ɂ��Web�A�v���P�[�V�����J���͔���I�ɐ������܂����B���܂ł́A���܂��܂ȃt���[�����[�N�����݂��Ă��܂��B���{���̃t���[�����[�NSeaser��T���E�}�C�N���V�X�e���Y��JSF�Ȃǂ��L���ł��B

�@���̒��ɁA�uStruts 2�v�Ƃ����t���[�����[�N�����݂��邱�Ƃ��������̕��͑����ł��傤�B�Ƃ��낪�A���{��̏�񌹂��ƂĂ����Ȃ��̂������ł��B���̌��ʁA�Ȃ��Ȃ����{�Ńu���C�N����L�b�J�P���‚��߂��ɂ��܂��B

�@���܂ł��A�����̌���Ŏg���Ă���Struts�́A2001�N�ɓo�ꂵ�܂����B�{��Struts���ڎw�������̂́A�����e�i���X���ɗD�ꂽ�A�`�[���J���ɓK�����y���񋟂��邱�Ƃɂ���܂����B���̌��ʋ]���ɂȂ������̂�Web�A�v���P�[�V�����́u���Y���v�ł��B���傱���Ƌ@�\��t���������������Ȃ̂ɁAXML�t�@�C����ҏW���āA���ꂱ��Ƒ����̃N���X�t�@�C�������K�v������܂����B

�}1�@�֗���Struts�����A�ۑ�������ς�
�}1�@�֗���Struts�����A�ۑ�������ς�

�@Struts 2�́AStruts�̉ۑ���������AStruts�́u�i���ێ��v�@�\��ۂ��‚A�܂������Ⴄ�u�J�������A�b�v�v�̎v�z�ō���܂����B

�R�����@�u�T�����m�肽��Struts 2�̋^��v

Q1�D�V����Struts 2�̐ݒ�t�@�C���̏������o���Ȃ��Ƃ����Ȃ��́H

A1�DStruts�Ɠ��l�ɁA�ݒ�t�@�C���������Ă��������ǁA�قƂ�ǂ̃P�[�X�ŏ����K�v������܂���B�ł��̂ŏ��������o����K�v������܂���I

Q2�DStruts�Ŋo�������Ƃ́A�܂��������ɗ����Ȃ��́H

A2�D��{�I�ȍ�����Struts�Ɠ����ł��BAction�N���X��View��Model�̋��n���R�[�h�������Ă�����{�I�ȏ������͂��܂܂łǂ���ł��B

Q3�DSeasar��Spring��DI�R���e�i�g���Ă��邩��A�\���Ȃ񂾂��ǁH

A3�DStruts 2�́ADI�R���e�i�Ƃ͕ʂ̃A�v���[�`�ŊJ���̌�������i�߂܂��B�ݒ�t�@�C���������Ȃ��Ă��ނ����ł͂Ȃ��AWeb�A�v���P�[�V�����J���ɓ����������܂��܂ȋ@�\���lj�����Ă��܂��B�܂��AStruts 2�́ASeasar��Spring�ƘA�g���邱�Ƃ��ł��܂��B

�@Struts 2�̏ꍇ�A�V�����y�[�W�����̂ɕK�v�Ȃ̂́AJSP�ƃV���v����Action�N���X2�‚̃t�@�C�������ł��B����̓R�[�h�r�n�C���h�Ƃ����@�\�ƁAJava 1.5�iJava 5�j���瓋�ڂ��ꂽ�@�\�ł���u@�i�A�b�g�}�[�N�j�v�́u�A�m�e�[�V�����v�ɂ���Ď������ꂽ���̂ł��B

�}2�@JSP�ƃV���v����Action�N���X2�‚̃t�@�C�������I
�}2�@JSP�ƃV���v����Action�N���X2�‚̃t�@�C�������I

�@�̂�Struts�����A�����Ăق��̃t���[�����[�N�����A�u�K���ɂȂ��t���[�����[�N�v�B���ꂪStruts 2�Ȃ̂ł��B

Struts 2���C���X�g�[�����Ă݂悤

�@�{�e�ł́A�O��Ƃ��Ĉȉ��̊‹��������Ă��邱�ƂƂ��܂��B��IT�̋L���Ȃǂ��Q�l�ɃC���X�g�[�����Ă����Ă��������B

  • Eclipse 3.0�ȏ�
  • Tomcat 5.5�ȏ�

�@Struts 2���̂̓A�m�e�[�V�����̎g���Ȃ��Â�JRE�ł����삵�܂����A�{�L���̓A�m�e�[�V�����𑽗p���邽�߁A�ŐV��JRE 1.6���g�p���܂��BEclipse�͍ŐV��3.4.1�ATomcat��6.0.18���g�p���܂��B

�� Struts 2�̃_�E�����[�h

�@Struts 2�����L�T�C�g����_�E�����[�h���܂��B

�@����́A�ŐV�̃o�[�W�����ł���Struts 2.1���g�p���܂��B�𓀂����t�@�C���̒��ɂ���ȉ��̃t�@�C�����ATomcat�́ulib�v�t�H���_�ɃR�s�[���܂��B

  • commons-logging-1.0.4.jar
  • freemarker-2.3.12.jar
  • commons-fileupload-1.2.1.jar
  • ognl-2.6.11.jar
  • struts2-codebehind-plugin-2.1.2.jar
  • struts2-core-2.1.2.jar
  • xwork-2.1.1.jar

�@�ق��ɂ�������JAR�t�@�C��������܂����AStruts 2�𓮂��������ōŒ���K�v��JAR�t�@�C���͏�L�݂̂ł��B�ق��̃t�@�C���͕K�v�ɉ����Ēlj����܂��B

�� Eclipse�̐ݒ�

�@Eclipse���N�����āA���j���[����m�t�@�C���n���m�V�K�n���m�v���W�F�N�g�n��I�����A�mWeb�n�t�H���_�̒��́m���IWeb�v���W�F�N�g�n��I�����ām���ցn�i�݂܂��B

�@�m�V�K���IWeb�v���W�F�N�g�n�E�B���h�E�ŁA�v���W�F�N�g���Ɂustruts2�v�ƋL�����A�^�[�Q�b�g�E�����^�C���́m�V�K�n��I�����܂��B�m�V�K�T�[�o�[������^�C���‹��n�̃E�B���h�E���J���̂ŁA�mApache Tomcat v6.0�n��I�����A�m�V�K���[�J����T�[�o�[�̍쐬�n�̃`�F�b�N�{�b�N�X�Ƀ`�F�b�N�����A�m���ցn�i�݂܂��B

�}3�@�m�V�K�T�[�o�[������^�C���‹��n
�}3�@�m�V�K�T�[�o�[������^�C���‹��n

�@�mTomcat�C���X�g�[���f�B���N�g���[�n�́m�Q�Ɓn����uapache-tomcat-6.0.18�v�t�H���_������сA�m�����n���N���b�N���āA�m�V�K���IWeb�v���W�F�N�g�n�E�B���h�E�ɖ߂�܂��B

�@�m�V�K���IWeb�v���W�F�N�g�n�E�B���h�E�ɖ߂�����A�m�����n�������܂��B�v���W�F�N�g���쐬�ł�����A�uWebContent/WEB-INF/web.xml�v�Ɉȉ��̋L�q��lj����܂��B

<filter>
  <filter-name>struts2</filter-name>
  <filter-class>org.apache.struts2.dispatcher.FilterDispatcher
  </filter-class>
  <init-param>
    <param-name>actionPackages</param-name>
    <param-value>test</param-value>
  </init-param>
</filter>

<filter-mapping>
  <filter-name>struts2</filter-name>
  <url-pattern>/*</url-pattern>
</filter-mapping>

�@Action�N���X�́A�utest�v�p�b�P�[�W�̉��ɔz�u���A�u/*�v�Ƀ}�b�`���郊�N�G�X�g�ɑ΂��āAStruts 2��ServletFilter��ʂ��悤�ɐݒ肵�Ă��܂��B

�@�ȏ�ŁAStruts 2�𓮍삳����‹��������܂����B���y�[�W�ł́A�ȒP�ȃT���v���ŁAStruts 2�̊J�������̗ǂ��������Ă݂܂��傤�I

  1-2-3

�@INDEX
Page1
  Struts�Ɂg2�h�����݂��邱�Ƃ�m���Ă܂������H
�R�����@�u�T�����m�肽��Struts 2�̋^��v
Struts 2���C���X�g�[�����Ă݂悤
  Page2
  ���i�����Ɓj�����ԂɁu����ɂ��́I Struts 2�v
�u����ɂ��́I Struts 2�v�̓��쌴��
  Page3
  4��ނ�Result�A�m�e�[�V�������g��������
�R�����@�u������OGNL�Ƃ́H�v
���ݓI�ȉ”\�����߂�Struts 2


Java Solution�S�L���ꗗ



Java Agile �t�H�[���� �V���L��
��IT���[���}�K�W���@�V������X�^�b�t�̃R���������[���œ͂��܂��i�����j

���ڂ̃e�[�}

Java Agile �L�������L���O

�{�� ����