TomcatɂĂ̂悭鎿Ɖ(FAQ)
----------------------------------------------

Q: 404 G[󂯎܂AǂӖł?

A: ȒPɌƁÁAT[oM̃NGXg\[Xt
   ȂӖ܂B 5 ̗Rɂ蔭܂B

   * 1. ͂ URL ԈĂ邩A^Cv~XꍇB
   * 2. v URL ݂ "docBase" ŉłȂꍇB
     Ȃg "WebAvP[V" ĂȂA FAQ
     ɂ "installing your own web-application" Ɋւ鎿ǂ
     B
   * 3. Windows vbgtH[ JDK 1.1.x gĂꍇB
     T[o̐ݒŃt@CzłȂǂmꂽoO
     (Readme Q)BJDK 1.2.x ςɎg܂傤B
   * 4. Windows vbgtH[ŁApX̕ 8 ȏ̃fBN
     g Tomcat CXg[ꍇBƂ΁A
     C:\Program Files\jakartȁꍇɁAZgẴfBNg
     ɈړĂ "startup" XNvgsꍇłB

     :
      > cd C:\Progra~1\jakarta
      > startup

     Ol[găfBNgړ΁A܂ł傤B

     :
      > cd "C:\Program Files\jakarta"
      > startup

   * 5. Unix vbgtH[ŁAV{bNNłt@C
     ANZX悤ƂꍇB


   Ō 3 ̏ꍇ́Aorg.apache.tomcat.core.DefaultServlet Ńt@C
   ̐ΖƃJmjJǂeXg邱ƂňN
   ܂B̃eXǵAWindows vbgtH[ŁA啶
   ݂Aǉ̕gt@C Tomcat  JSP t@C
   Ƀ\[Xt@CĂ܂dȃZLeB
   悤Ƃ܂B̃eXǵAL̂悤ȕp
   @ɒuׂłB

Q: 500 G[󂯎܂AǂӖł?

A: ȒPɌƁA̓NGXgĂԂɂ
   "Internal Server Error" NƂӖ܂B̃G[ɕt
   ďڂm邽߂ɂ́AT[oEBhẼg[X𒍈Ӑ[Kv
   ܂B

   ̃G[ jsp \[X servlet ɕϊĂԂɂ
   B̂悤ȕϊ̃G[́AقƂǂ jsp t@ĆA
   ꂽ java t@C̕@G[łB
   T[oEBhẼG[bZ[WgāAfobOĉB

   G[̓NGXgɂ܂BĂсAT[õg[X
   ΁AŗL̖_OɂĂ̏𓾂邱Ƃłł傤B

Q: CLASSPATH ɂ͉Kvł?

A: ܂Ao[W JDK (1.1.x  1.2)KvłB

   JSP GW 'javac' ĝŁA CLASSPATH ɂKv
   ܂BJDK 1.1.x gĂꍇɂ́A͎IɊ܂܂Ă
   BAJDK 1.2 gĂꍇɂ́AJDK CXg[
   fBNg JAVA_HOME ɐݒ肷Kv܂B
   "tools.jar"  CLASSPATH ɒǉĂ悢ł傤B

   ̑SĂ̕KvȃNXjar t@ĆAstartserver XNvg
   ̂ŁACɂKv͂܂B

Q: JSP  Servlet ̃NX͂ǂɂ܂?

A: lib/webserver.jar         -- Servlet GW̃NXt@CB
   lib/jasper.jar            -- JSP GW̃NXt@CB
   lib/servlet.jar           -- Servlet ̃pubN APIB
   lib/jaxp.jar              -- XML p[TC^tF[XppubN APIB
   lib/parser.jar            -- pubN XML p[TQƎB


Q: ̃NX𑼂 Web T[oƍ݂ł܂?

A: JSP GẂApubN Java Servlet 2.2 API ̈ꕔgĂ
   ܂B_Iɂ́AServlet 2.2 API T|[g鑼 servlet GW
   ł삷͂łAB͂̃[X Tomcat ȊȎ
   servlet GWŃeXgƂ͂܂B

Q:  jsp \[X bean ǂɒu΂̂ł?

A: V Web AvP[V炸 JSP ̃eXgȂ
   ΁AftHg "example" AvP[V𗘗pł܂BV
   Web AvP[V肽Ȃ "how to install a new
   web-application?" ǂŉB

   ftHggɂ́ASĂ JSP \[X /examples/jsp ̉ɒu
   A/examples/jsp ̐VTufBNg(examples Ɋ܂܂悤
   )ɒu܂BSĂ bean(NXt@C)
   /examples/WEB-INF/jsp/beans ̉ɓK؂(beans ܂܂悤)
   u܂Bstartserver XNvǵÃNXsɎI
    CLASSPATH ɒǉł傤B

   T[oɓ삵Ăꍇɂ́A~ĂċNKv
   ܂Bhttp://locahost:8080/examples/jsp/yours.jsp w肷
   ΁Ajsp ĂяoƂł܂B

Q: Web AvP[Vĉł? ǂΐV Web AvP[V
   CXg[ł܂?

A: Web AvP[V́Ajsp, servlet, html t@CAC[WA
   ̃\[X̏W܂łB́A "URI" vtBbNXɌ
   тĂ܂B

   Ⴆ΁ASĂ̖싅Ɋւ郊\[X́A"baseball" fBNgɏW
   ASĂ "/baseball" Ŏn܂郊NGXǵÃAvP[V
   ɌтĂƂ܂B

   VAvP[V server.xml t@CҏW邱Ƃɂ
   Tomcat ɒǉ܂B"baseball" AvP[Vǉɂ́A
   ȉt@C(̓K؂ȏꏊ)ɒǉΗǂł傤:

  <Context path="/baseball" docBase="<baseball>"
     debug="0" reloadable="true"/>

   <baseball>  "baseball" fBNg̐΃pX́ATomcat 
   z[fBNg̑΃pXɒuĂB

   ڍׂ́A"server.xml" ǂŉB

   XɁAAutoSetup C^Zv^̂ŁA"baseball" fBNg
   Tomcat z[fBNg̉ "webapps" fBNg֍쐬܂
   Rs[鎖ł܂BɒuƃftHg̐ݒŎI
   񋟂ł傤BftHg̐ݒ㏑̂łȂ΁A
   server.xml  <Context ... /> Gg͕Kv܂B

   a) Web AvP[V servlet CXg[ɂ́Aȉ
   s܂B

   * Servlet ɃRpCĂ΁Aȉ̕@Tomcatɒǉ
     ܂B

                ǂ "Web AvP[V" ReLXg Servlet 
                ǉ邩߂܂B
                
                Servlet NXt@CA WEBAPP/WEB-INF/classes
                fBNgɒǉ܂

   * VCXg[ Servlet ɖO⏉p[^`K
     v΁AɈȉ̂悤ɐݒ肷Kv܂B

                Servlet A<servlet> vfg
                WEBAPP/WEB-INF/web.xml t@Cɓo^܂

                ɁAWEBAPP/WEB-INF/web.xml t@C <servlet-mapping>
                vfǉ΁AServlet ReLXgɊ֘A URI
                NGXgɃ}bv邱Ƃł܂B


    * ŌɃT[oċN܂B

        V servlet ɂ́Aȉ̂悤 URI ŃANZXł܂B

                http://localhost:8080/WEBAPP/servlet/SERVLET-NAME

        URI pX servlet Ƀ}bvꍇɂ́Aȉ̂悤 URI ŃA
        NZXł܂B

                http://localhost:8080/WEBAPP/foo.EXTENSION

                        -  -

                http://localhost:8080/WEBAPP/MAP-PATH

        ꏊ:

                WEBAPP = EFuAvP[V URI 
                SERVLET-NAME = servlet ̃x[X
                EXTENSION = t@Cgq
                MAP-PATH = ֘AÂ URI }bṽpX

   b) jsp  bean WebAvP[VɃCXg[ɂ́Aȉ
   悤ɂ܂B

   * jsp \[XA /WEBAPP ̉̔Cӂ̃fBNgɒu܂B

   * RpCꂽ bean  CLASSPATH Ɋ܂܂邱ƂmF܂B
      CLASSPATH ƂŐݒ肷邩Astartup XNvgC
     ̂ǂ炩̕@ōsƂł܂B

   * ŌɃT[oċN܂B

     V jsp ́Aȉ̗l URIŌĂяoƂł܂B

     http://localhost:8080/WEBAPP/yourfile.jsp

Q: URI ́AT[ołǂ̂悤ɏ̂ł?

A: ܂AWeb T[óANGXgꂽ URI ̐擪ƑSẴReLXg
   (webAvP[V)̃vtBbNXƍ܂B
   ǂ̃ReLXgYȂꍇɂ́AɃftHgReLX
   ggp܂B

Q: JSP GW̏p[^̈Ӗ̈Ⴂ?

A:
   * keepgenerated: 
        ꂽ java t@CcǂBtrue/false ̒l
        ܂Bl true Ȃ΁Aꂽt@CcAȂ
        폜܂BftHg true łB

   * scratchdir: 
        ꂽR[hi[邽߂ɍƃfBNg쐬܂A
        ̃p[^gĕύX邱Ƃł܂B
        ̃fBNg docbase ̉ɍ܂B

   * largefile: 
        true/false ̒l܂B̃p[^ true ɐݒ肳
        ƁAt@CɂȂꍇɂ́ASĂ̐ÓI HTMLt@C
        𕪊Ċi[܂Btrue ɐݒ肳ĂƁAmappedfile p
        [^̐ݒ㏑܂BftHg false łB

   * mappedfile:
        true/false ̒l܂BÓI HTML ̂ꂼ̍s
        ďo͂ĂقȂÃp[^ true ɃZbg
        B largefile p[^ true ɃZbgĂȂA
        ̃p[^͖܂Blargefile Amappedfile ǂ
         true łȂȂAÓI HTML  32K ܂ł̃ubNɏo͂
        ܂B

   * sendErrToClient: 
        true/false ̒l܂Btrue ɐݒ肳Ăꍇɂ́AR
        pC^̓G[̓X|ẌꕔƂăNCAgɑ
        ܂BftHg false łB

   * ieClassId: 
        ̓vOCƈꏏɎgp܂B́AvOCANeB
        uɂ邽߂̓ʂ id łB݁AftHgl IE4  IE5
        ̂߂ɐݒ肳Ă܂B́A[XIẼNX
        ID i[邽߂Ɏgp܂B

   * classdebuginfo:
        NXt@CɃfobO܂߂邩ǂݒ肵܂B
        true/false ̒l܂Btrue ɐݒ肳Ăꍇɂ́AT[
        ubgNXt@CRpC鎞ANXfobO
        ܂܂܂BftHg false łB


   ftHgƈႤlɃZbgɂ́AJSP GW servlet 
   .jsp( jps)gq WEBAPP/WEB-INF/web.xml ɂĖIɒ
   `Kv܂B

   :

    <servlet>
      <servlet-name>
          jsp
      </servlet-name>
      <servlet-class>
          org.apache.jasper.runtime.JsPServlet
      </servlet-class>
      <init-param>
          <param-name>
              keepgenerated
          </param-name>
          <param-value>
              true
          </param-value>
      </init-param>
      <init-param>
          <param-name>
              sendErrToClient
          </param-name>
          <param-value>
              true
          </param-value>
      </init-param>
    </servlet>
    <servlet-mapping>
        <servlet-name>
            jsp
        </servlet-name>
        <url-pattern>
            *.jsp
        </url-pattern>
    </servlet-mapping>

[: Ս`V|󂵂܂B{ɑ΂RǵA
jajakarta-report@nekoyanagi.comɑĉB]
