java - Incomplete HTTP Response from Tomcat -


  • tomcat 8.0.17, residing on localhost.
    • linux mint 17.1
    • oracle java 8.0.1.40-b25

i have jsp long: contains drop-down list country codes , countries (named in hebrew). when try load jsp address, in return partial response. cutting off @ around portugal (can anywhere else, depending on amount of code in page).

the page address example.com/he/index2.jsp

i think related size of page because when remove lines, response correctly.

i don't exceptions or errors, , response returns status 200.

i have tried setting buffer size 8kb, 32kb, 128kb , 2048kb. when 8kb did buffer overflow error, @ 32 , above didn't error , response still partial.

i tried set auto flush false.

i have tried setting both maxswallowsize , socketbuffer 32768 in connector node in server.xml.

narrowing down code minimum, have example evil page. have removed unnecessary java code, includes, etc. remarked includes essential because need these css files. inspection commented them out, still partial response.

don't know if related, have request filter parses address, sees the address starts /he/ , attaches session object request. object contains string session id, locale , string referrer. forwards request index2.jsp.

i appreciate of solving issue.

the minimum page causes problem: last paragraph element used indicate if response correct.

<%@ page buffer="2048kb" autoflush="false" %>  <%@ page language="java" contenttype="text/html; charset=utf-8" pageencoding="utf-8"%>  <!doctype html>  <html>  <head>      <!--     <link href="/css/bootstrap.css" rel='stylesheet' type='text/css'/> -->      <!--     <link href="/css/bootstrap.min.css" rel='stylesheet' type='text/css'/> -->      <!--     <link href="/css/theme-style.css" rel='stylesheet' type='text/css'/> -->      <!--     <meta name="viewport" content="width=device-width, initial-scale=1"> -->      <!--     <script src="/js/jquery.min.js"></script> -->      <!--     <script src="/js/bootstrap.min.js"></script> -->  </head>  <body>      <select>          <option value="il">ישראל</option>          <option value="ug">אוגנדה</option>          <option value="at">אוסטריה</option>          <option value="au">אוסטרליה</option>          <option value="ua">אוקראינה</option>          <option value="uy">אורוגוואי</option>          <option value="az">אזרבייג'ן</option>          <option value="ae">איחוד האמירויות הערביות</option>          <option value="it">איטליה</option>          <option value="bs">איי בהאמה</option>          <option value="vg">איי הבתולה הבריטיים</option>          <option value="tc">איי טורקס וקאיקוס</option>          <option value="mh">איי מרשל</option>          <option value="sj">איי סבאלברד ויאן מאיין</option>          <option value="sc">איי סיישל</option>          <option value="fo">איי פארו</option>          <option value="fk">איי פוקלנד</option>          <option value="pn">איי פיטקרן</option>          <option value="ck">איי קוק</option>          <option value="ky">איי קיימן</option>          <option value="sb">איי שלמה</option>          <option value="id">אינדונזיה</option>          <option value="is">איסלנד</option>          <option value="ie">אירלנד</option>          <option value="sv">אל סלוודור</option>          <option value="al">אלבניה</option>          <option value="dz">אלג'יריה</option>          <option value="ai">אנגווילה</option>          <option value="ao">אנגולה</option>          <option value="ad">אנדורה</option>          <option value="ag">אנטיגואה וברבודה</option>          <option value="ee">אסטוניה</option>          <option value="ec">אקוודור</option>          <option value="ar">ארגנטינה</option>          <option value="aw">ארובה</option>          <option value="er">אריתריאה</option>          <option value="am">ארמניה</option>          <option value="us">ארצות הברית</option>          <option value="et">אתיופיה</option>          <option value="bt">בהוטן</option>          <option value="bw">בוטסואנה</option>          <option value="bg">בולגריה</option>          <option value="bo">בוליביה</option>          <option value="ba">בוסניה והרצגובינה</option>          <option value="bi">בורונדי</option>          <option value="bf">בורקינה פאסו</option>          <option value="bh">בחריין</option>          <option value="by">בלארוס</option>          <option value="be">בלגיה</option>          <option value="bz">בליז</option>          <option value="bj">בנין</option>          <option value="bb">ברבדוס</option>          <option value="bn">ברוניי</option>          <option value="br">ברזיל</option>          <option value="gb">בריטניה</option>          <option value="bm">ברמודה</option>          <option value="dj">ג'יבוטי</option>          <option value="jm">ג'מייקה</option>          <option value="ge">גאורגיה</option>          <option value="ga">גבון</option>          <option value="gt">גואטמלה</option>          <option value="gp">גוואדלופ</option>          <option value="gy">גיאנה</option>          <option value="gf">גיאנה הצרפתית</option>          <option value="gi">גיברלטר</option>          <option value="gn">גינאה</option>          <option value="gw">גינאה ביסאו</option>          <option value="gm">גמביה</option>          <option value="gl">גרינלנד</option>          <option value="de">גרמניה</option>          <option value="gd">גרנדה</option>          <option value="dm">דומיניקה</option>          <option value="dk">דנמרק</option>          <option value="za">דרום אפריקה</option>          <option value="kr">דרום קוריאה</option>          <option value="nf">האי נורפוק</option>          <option value="an">האנטילים ההולנדיים</option>          <option value="in">הודו</option>          <option value="nl">הולנד</option>          <option value="hk">הונג קונג</option>          <option value="hu">הונגריה</option>          <option value="hn">הונדורס</option>          <option value="ph">הפיליפינים</option>          <option value="do">הרפובליקה הדומיניקנית</option>          <option value="cd">הרפובליקה הדמוקרטית של קונגו</option>          <option value="wf">ואליס ופוטונה</option>          <option value="vn">וייטנאם</option>          <option value="vu">ונואטו</option>          <option value="ve">ונצואלה</option>          <option value="zw">זימבבואה</option>          <option value="zm">זמביה</option>          <option value="ci">חוף השנהב</option>          <option value="tw">טאיוואן</option>          <option value="tj">טג'יקיסטן</option>          <option value="tv">טובאלו</option>          <option value="tg">טוגו</option>          <option value="to">טונגה</option>          <option value="tn">טוניסיה</option>          <option value="tr">טורקיה</option>          <option value="tm">טורקמניסטן</option>          <option value="tz">טנזניה</option>          <option value="tt">טרינידד וטובגו</option>          <option value="gr">יוון</option>          <option value="jp">יפן</option>          <option value="jo">ירדן</option>          <option value="kw">כווית</option>          <option value="la">לאוס</option>          <option value="lu">לוקסמבורג</option>          <option value="lv">לטביה</option>          <option value="lt">ליטא</option>          <option value="li">ליכטנשטיין</option>          <option value="ls">לסוטו</option>          <option value="mr">מאוריטניה</option>          <option value="mu">מאוריציוס</option>          <option value="yt">מאיוט</option>          <option value="ml">מאלי</option>          <option value="mg">מדגסקר</option>          <option value="va">מדינת קריית הוותיקן</option>          <option value="mz">מוזמביק</option>          <option value="md">מולדובה</option>          <option value="mn">מונגוליה</option>          <option value="me">מונטנגרו</option>          <option value="ms">מונטסראט</option>          <option value="mc">מונקו</option>          <option value="fm">מיקרונזיה</option>          <option value="mw">מלאווי</option>          <option value="mv">מלדיביים</option>          <option value="my">מלזיה</option>          <option value="mt">מלטה</option>          <option value="eg">מצרים</option>          <option value="mk">מקדוניה</option>          <option value="mx">מקסיקו</option>          <option value="ma">מרוקו</option>          <option value="mq">מרטיניק</option>          <option value="nr">נאורו</option>          <option value="no">נורווגיה</option>          <option value="ng">ניגריה</option>          <option value="nz">ניו זילנד</option>          <option value="nu">ניואה</option>          <option value="ne">ניז'ר</option>          <option value="ni">ניקרגואה</option>          <option value="na">נמיביה</option>          <option value="np">נפאל</option>          <option value="st">סאו תומה ופרינסיפה</option>          <option value="sz">סווזילנד</option>          <option value="so">סומליה</option>          <option value="sr">סורינאם</option>          <option value="sl">סיירה ליאונה</option>          <option value="c2">סין</option>          <option value="sg">סינגפור</option>          <option value="si">סלובניה</option>          <option value="sk">סלובקיה</option>          <option value="ws">סמואה</option>          <option value="sm">סן מרינו</option>          <option value="sn">סנגל</option>          <option value="sh">סנט הלנה</option>          <option value="vc">סנט וינסנט והגרנדינים</option>          <option value="lc">סנט לוסיה</option>          <option value="pm">סנט פייר ומיקלון</option>          <option value="kn">סנט ריטס ונוויס אנגווילה</option>          <option value="es">ספרד</option>          <option value="rs">סרביה</option>          <option value="lk">סרי לנקה</option>          <option value="om">עומן</option>          <option value="sa">ערב הסעודית</option>          <option value="pl">פולין</option>          <option value="pf">פולינזיה הצרפתית</option>          <option value="pt">פורטוגל</option>          <option value="fj">פיג'י</option>          <option value="fi">פינלנד</option>          <option value="pw">פלאו</option>          <option value="pa">פנמה</option>          <option value="pg">פפואה גינאה החדשה</option>          <option value="py">פרגוואי</option>          <option value="pe">פרו</option>          <option value="td">צ'אד</option>          <option value="cl">צ'ילה</option>          <option value="cz">צ'כיה</option>          <option value="fr">צרפת</option>          <option value="co">קולומביה</option>          <option value="km">קומורוס</option>          <option value="cg">קונגו</option>          <option value="cr">קוסטה ריקה</option>          <option value="kz">קזחסטן</option>          <option value="qa">קטאר</option>          <option value="cv">קייפ ורדה</option>          <option value="kg">קירגיזסטן</option>          <option value="ki">קיריבטי</option>          <option value="nc">קלדוניה החדשה</option>          <option value="kh">קמבודיה</option>          <option value="cm">קמרון</option>          <option value="ca">קנדה</option>          <option value="ke">קניה</option>          <option value="cy">קפריסין</option>          <option value="hr">קרואטיה</option>          <option value="re">ראוניון</option>          <option value="rw">רואנדה</option>          <option value="ro">רומניה</option>          <option value="ru">רוסיה</option>          <option value="se">שוודיה</option>          <option value="ch">שוויץ</option>          <option value="th">תאילנד</option>          <option value="ye">תימן</option>      </select>      <p>last paragraph</p>  </body>  </html>

thanks jozef chocholacek have figured out solution.

did quick test of code on fedora 22 (tomcat 8.0.17, oracle java 1.8.0_45-b14) , seems work correctly. suspect problem in filter - mind share code?

since response going through filter, should have set buffer size there using response.setbuffersize(...). working well.


Comments

Popular posts from this blog

python - pip install -U PySide error -

arrays - C++ error: a brace-enclosed initializer is not allowed here before ‘{’ token -

cytoscape.js - How to add nodes to Dagre layout with Cytoscape -