Need help with attachments

164 views
Skip to first unread message

Mohamed Shire

unread,
May 31, 2017, 1:28:35 PM5/31/17
to Gatling User Group
I am trying to create a simulation script that calls a rest service and upload a pdf document.

I created SOAP UI to test this scenario and it works as expected.

When I run the Gatling simulation script  to do the same , I am getting - ><ns1:faultstring xmlns:ns1="http://cxf.apache.org/bindings/xformat">java.lang.StringIndexOutOfBoundsException: String index out of range: -1</ns1:faultstring></ns1:XMLFault>

It seems the Apache Cxf parser is not able to process what the Gatling script posted.

Below  are the Gatling simulation Script, SOAP UI raw request and Gatling raquest data.
One thing I noticed is that SOAP UI identifies the Content-Type: multipart/form-data, while Gatling identified the Content-Type: multipart/form-data and Content-Disposition: form-data... should the Content-Disposition also be multipart/form-data .

Also, the binary content of the pdf file in Gatling looks bit different than compared to SOAP UI binary content.

Any help will be appreciated...


My Gatling Script...portion of it
=====================
           exec(
http(session => "UploadDocument")
.post(postUrl)
.header("Content-Type", "multipart/form-data")
.header("Media-Type", "multipart/form-data")
.header("accept", "application/json")

.bodyPart(StringBodyPart(getJsonRequestBody())).asMultipartForm
.bodyPart(RawFileBodyPart("file", pdfFileName).contentType("application/pdf").fileName("2016_Payroll_Calendar.pdf")).asMultipartForm
.check(status is 200))


SOAP UI Raw Rquest
======================
Accept-Encoding: gzip,deflate
mediaType: application/json
Content-Type: multipart/form-data; boundary="----=_Part_10_5017504.1496170819948"
MIME-Version: 1.0
timestamp: 11111
accept: application/json
Content-Length: 35007
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)


------=_Part_10_5017504.1496170819948
Content-Type: multipart/form-data
Content-Transfer-Encoding: 8bit

{
"uploadDocument": {
"uploadDocumentRequest": {
"repositoryId": "PSEUDO1",
"documentName": "abc1",
"documentClass": "u_clinical_docs",
"documentKeys": {
"documentKey": [
{
"name": "u_cse_id",
"value": "TEST23081990",
"dataTypeIndicator": "String"
},
{
"name": "u_mbr_dob",
"value": "2000-01-01",
"dataTypeIndicator": "datetime"
}
]
},
"folderId": "",
"contentStream": {
"length": "",
"mimeType": "application/pdf",
"fileName": "",
"document": "2016_Payroll_Calendar.pdf"
},
"versioningState": "none",
"extension": {
"transformRequired": "false"
}
}
}
}

------=_Part_10_5017504.1496170819948
Content-Type: application/pdf; name=2016_Payroll_Calendar.pdf
Content-Transfer-Encoding: binary
Content-Disposition: form-data; name="2016_Payroll_Calendar.pdf"; filename="2016_Payroll_Calendar.pdf"

%PDF-1.4
%ª«¬­
4 0 obj
<<
/Producer (Apache FOP Version 0.95)
/CreationDate (D:20170503180813Z)
>>
endobj
5 0 obj
<<
  /N 3
  /Length 11 0 R
  /Filter /FlateDecode
>>
stream
xœ?–wTT× ‡Ï½wz¡Í0Ò zïm



Gatling Raw Request 
==============================

headers=
accept: application/json
Media-Type: multipart/form-data
Authorization: Bearer b6f66f64-dc96-435e-913b-4df1ad9a38fd
Cookie: OPENSHIFT_EDGE_apiengine-eisl-ctc-stage-fulfillment_stage-fulfillment-gtm_SERVERID=604383a6d762f30916b0869331acbc83
Content-Length: 35336
Content-Type: multipart/form-data; boundary=e-5bIyoWW7ddteWlytvfdmOvS69Bjj7xPu
parts=
StringPart: name=null contentType=null dispositionType=null charset=UTF-8 transferEncoding=null contentId=null
FilePart: name=file contentType=application/pdf dispositionType=null charset=null transferEncoding=null contentId=null filename=2016_Payroll_Calendar.pdf file=C:\projects\OIL\oil-performance-all\JarvisIntegration\lates\new\RB-2.x\oil-performance-rest\target\classes\bodies\2016_Payroll_Calendar.pdf
multipart=
--e-5bIyoWW7ddteWlytvfdmOvS69Bjj7xPu
Content-Disposition: form-data

{"uploadDocument": {
           "uploadDocumentRequest": {
               "repositoryId": "PSEUDO1",
               "documentName": "abc1",
               "documentClass": "u_clinical_docs",
               "documentKeys": {
                  "documentKey": [
                     {
                        "name": "u_mbr_dob",
                        "value": "1/1/2000",
                        "dataTypeIndicator": "datetime"
                     },
                     {
                        "name": "u_mbr_dob",
                        "value": "1/1/2000",
                        "dataTypeIndicator": "datetime"
                     }
                 ]
              },
               "folderId": "",
               "contentStream": {
                  "length": "",
                  "mimeType": "application/pdf",
                  "fileName": "",
                  "document": "2016_Payroll_Calendar.pdf"
               },
               "versioningState": "none",
               "extension": {
                  "transformRequired": "FALSE"
               }
            }
        }
      }
--e-5bIyoWW7ddteWlytvfdmOvS69Bjj7xPu
Content-Disposition: form-data; name="file"; filename="2016_Payroll_Calendar.pdf"
Content-Type: application/pdf

%PDF-1.4
%????
4 0 obj
<<
/Producer (Apache FOP Version 0.95)
/CreationDate (D:20170503180813Z)
>>
endobj
5 0 obj
<<
  /N 3
  /Length 11 0 R
  /Filter /FlateDecode
>>
stream
x???wTT? ??wz??0? z?m ?]@z ?af?? 0? "6DT ???`
0 ?C( ?? ?? % ??P??????????{?????]?Z ?w*+- ? ?'? {??#????~ <? 3 ??? ? ?P ??? =K? ?E?? $~?2 ? ??I?2? ?@ [?9Y, ?85G?!??? ?"f %f??"? s?" ~?Ydg1??xl ???Nc??G?[?? #~".??rrD|[E??4???c?8LQ (??.?Dl*b ?4?M?K ?? ???/X?? ??rK?X??&& ?,=???-????I? F?LV
?????e0y? X???dj???lmfkmmdnl?E?????????2?s? Z? ???K? ?1'???l?{ ?? ???l?? ? ???? ????$ d????? s9,cqA ??t? ??{???~/ ??? ?
???S?|zV ?š ?y??q?_??0????sx??p?qy??v??\ 7?G???S ?a??8?"Q?? j?1??A ??} E! $?h ??o~?p ?y ???s?Y??
@ P?<P @ s` ?3? ?@ Q` `?$? ? ?? ?? `7? A=h -? ? ?? p \ 7? ? F? x f?k0 A "C H R?? ? b@?? ? CQP ? ? !? m?J?r? ?? ?o?S? ?*4 ?Oi?W?=??$?
????xc?0?5?R?~L+?<f 3???b??X ? 6 ??
? ~? M?!8 B ???*B ? ? ?%?HT'? ??\? b ?8?
??/Q^??d??%?K??)?9?q??Z??????=?S?w?w??T@)?+ )?( P??0?HU?Wd) +?P?? +?+ +?Q:??4??????W???
?F?F?F??????f?f??=-? C+Ik?V?? m ? ?-? ?S:r:>:y:?: t?N???u???0z ? ??z7?a}+?$? ? ??? ?`???!???gXg8bD2r1?6j6 3? ? w ?7?4?6?i?k????4???????2? ?.?_???Y?5?-? ? ?-:-^X Xr, X??X?[m???hmc?n???????g3 2 ??+?h[W????m??Y? ?N??bod?b?d??Tg)gi??q u ?C?è#?1???? ????3??y?E?%???sWSW?k?? 7;??n?? w/?b?~ ?0?j?G?????^V^k??{??}?wz??(??| }f??,[??U? ?[???O???? ?/????`??r?? ? ?+?a?N`f??A??????'?f????!????????e???tÄa???1??o"?#?#F#M"?F^?R??FuFc?ã ??Vx??b"?*?(fx????WW)?J]u&V2? {2 ? ?? ??c?????e???????? ?i? ??3???P?0??+q:?)?2i????H?N>??&% ?H?BjDjk .-.? O????IWI?M ?0?(? ???9???7dAY+?: T??T?PW?Y8??]??6'<?d?t./?o???m?'?<?^?Z?Z????1 l????u??u??5? ??????F???? ? ? ?? ???P?pC??f???E E???-?[ nEm?n??f?m?O???k%?%?% JY??2???? ???? ????? ???h?ty^??.?]? ??W?cw_???<???G?g???s??? {?T'U ???S?m????? ? ? T>Xr??!?;?^??u?u??1?? ?? ?????uc?BCI??#?#?G???4?466)5?5?????c1?n~??Mg?QKm+???88.<???o?O???>?8???w??(m??P?????????S?Nuw?w?}o????j?k??);K8[xv?\??? ?g.$^ ?? 1?????K???\??|???? ?+???]=u?q?????>??? ?~h??o?as?????? g ? /?r?u?????C? ?Æ?C??a???z?Ž?{??7<@?(~(????? ?~l ? =3?>??8???q?????~?0Q????rRu?q?|??????+?N<?x6?S???????>?? ?_?f#g'^?_,?Z?R??W???? ? ?N{=??????? ?z?G???????P?Q?c?'?O ? ~ g???
endstream
endobj
6 0 obj
[/ICCBased 5 0 R]
endobj
7 0 obj
<<
  /Type /Metadata
  /Subtype /XML
  /Length 12 0 R
  /Filter /FlateDecode
>>
stream
x????N?@ ??M? d\??cc? ?)i?T ?h??\[R~?a ????G? *`mh????s?? ?7?xDw ?5l??G_ ?H????Gss???? ??? =???$ ? ?"U?S??V?IV??G ??@T]_c?t?`??1?5 u??VJN0.??( # l???M ?? z???? ??"?2???Xe?q\m?<U?-??H? ?u??>: ? Y???)??V}? ???B{ Q???<?G?N??F X?u???S*|Fy ????Er| F1$?B& ?n??3JX$??]?[[&q`??n?t?YYcb???? ?f ?? ??C?_???U? ??C?F?T?Z ??? ?D ?p??c??>u?LEV4?? ???
endstream
endobj
10 0 obj
<<
  /Name /Im1
  /Type /XObject
  /Length 13 0 R
  /Filter /FlateDecode
  /Subtype /Image
  /Width 90
  /Height 80
  /BitsPerComponent 8
  /ColorSpace [/Indexed /DeviceRGB 255 <CCE1EBE0E6EB00ADEA008AC594BCCCEAEEF1D3D6DAF3F7F931C1F082CCEA00B2EDE4E9ED6EA3BB7CC4E4556A7674727419BCEFADB3B995D5F2B2B8BD68A9C27BCBEBF5F8FAA7DAF30093D5FDFDFE8AD2F0D9E0E6C9DEEA86D0ED25BEEFD5E6EEF2F4F6C1C9D174CCF12C2C2FC9CCD0C5DDE9007DAB35B2E6CED1D5BEC2C7B7BCC2BBE1F4589EBA4C494ADDE4E900A9E7D6DEE4C1E5F5EEF1F4C6CDD400A1E10095D98FC3D7BEC6CE49C5F100A0DED2D9DEEFF0F1D2E9F4EDF5F8B2DEF3A5A5A7A9B9C4F9FAFA00A4E3A6C6D30D81AB86848658C7F146B5E774868F6ACAF1BED9E667BCE67AB3CAD4DCE276BAD8E9EBEC83C5E455B7E6C8E5F49AA9B3ACD7E7A4AEB526ADE4E4E5E7C9D1D76679848F9BA26DB5D10081B23895B7009DE0D0E2EC009ADDD9E9F03A4B5616ADE516A2DF009EDCC1DAE77FA8BBD9E4EDBBC9D2DBE2E80093CB3F9BBDD2E4ED96A3AACFD6DC0CBAEF36748ED8DEE301B8EE72BEE000A6E4E5F0F5FBFCFD81919BDEE1E3D0E0EBC3C7CBE8F2F7F0F3F5F3F5F7F8FAFCB6C1C9DDE6EE93CDE875C9E94358640098DBCED4DA76C5E538444D55A4C20AAAE4C3D1D80084BAC3C2C4DFE9EE9DD5EFDDE2E8244B5CDBECF5C1DBE8288DB1B9C2C9D3D3D4DCEAF1DCE1E661C0EDE6EAF0C5CCD36B9BB3009CD98BCFEDD4E2EC0098D4B3CBD67CC8E7F4F3F3008ED14989A4D2DBE12E8CAFEFEEEED4DAE076C0E2C7CFD6333B420CB4EC82C9E7BCCED883D0EE77C2E4E2EEF473C7E8E0EDF37DC0DCD8DBDEDFECF33E515C88C6E4BAD3DF1784ABC3DCE872C5E68BC8E571C0E471C2E6008ABFE8ECEF6CB1CCB3C6D1CED9DFD8EBF586C7EAC4DBE8BCC4CCCBD2D9E1E8EFCBD4DB27414F5E5C5D4B9FBD1E89AF1F5369DEDDDED3DCE2E0DFDFD9DBDEE7EBF0C3CBD2E3EFF4EAEAEAC0C8CF2F667CC3D6E0BAC3CBB3CFDB72A6BE6FD0F2D7E3EC139CD86360621F4758ADC3D07CCEF0A8D0DFCEE7F4423F40C7C9CE08A1E137A9E2EBEFF2D3DFE64F98B45289A35591AA3EC3F0D8D8DACFDCE3D7E7EFC9D3DBC7D5DE7EC5E7A2B1BB8F8D8EBFC7CB2C90B53C8AA7465D6AFFFFFF>]
>>
stream
,?????KD??R.?o??O?}???g ?_?
? ?? \? ??a?'?|?<?o / I ? ? ??U
?H?? ?@# ?n??P? ?0 ? ?a?0 ??WG?v?DC9? ??? ???N,?? ???T*???oSF ??rt? d?3x_pJ???U0?C?? ( wN?of?~D5???H>w ?? ?L%?;(5??6D???H h??< F??n* w?? ? ???M^ ??'H? ?< ?oO:w?E(?J?? %?x??Kw]??c??? ??#oww?ZZ??}l?S?? {?? 6???)???O? ???soBk
??????? /?d;;???w_m?????rL??d O???????O?3? ;???Xç!??^m??W??M ` ??K?2??? ?j?o???????02x2???S=?/?@???????"? ??l??X??N~Py?&? ?=?? H?mJ?f? W-???oe`?? bJV?? W?Q? ?85#?,?rD?0 ?????S}??+Mv? * O?? q?d? ?RN??m?s???3 ??$??2yATT ???j ?[T l.?B??!,???bv ?????hQ?? 2*Fz?|??~?l nR e?(?Y?&L??? ?L?? ?]hn?????
?u??`E? ??i?????b?7s???z@??W& C?????N?_
???%V?d?
b xvM? ?N??=???rQK? m8? ?v&???L ??>? ????bt??=========================

Reply all
Reply to author
Forward
0 new messages