Oracle ADF BC stress testing

Hi All,
I have an Oracle ADF application which uses SOA and ADF BC in back-end. As per my requirement, I need to do stress test on ADF BC back-end component. As I said, this application is containing SOA and ADF BC calls so I prepared a test JSPX file on top of single AM (ADF's application module integrates all BC components).
This is first step in which I actually test single AM. There-after I prepared a JMeter script which actually makes HTTP URLs for calling JSPX. Firstly, I prepared this script for 15 concurrent users. Accordingly, I made changes in AM pooling configurations.
This is working fine but I have a doubt here, which is, I need to prepare seperate JSPX files (for different HTTP URLs) for different AMs (i.e. different ADF BC components). Is there any way through which I just pass some code snippet in existing application which actually test the ADF BC component. If I create JSPX file each time for each AM module, this will take too much time and efforts.
I am looking for something which should be implemented with existing application. I do not know, how to do that?
Please suggest me in case you have any alternate solutions.
Regards,
Dilip Gupta@Wipro

Wrong forum.
Try: JDeveloper and ADF

Similar Messages

  • Oracle ADF - OATS Load Testing

    Gurus,
    I was trying to do load testing with Oracle Application Testing Suite, after recording when I try to play it back the results are showing so many authentication errors - "Failed     HTTP response code: 401 Unauthorized ".
    Any suggestions how can we make it work?
    Thanks
    Prasad

    Wrong forum.
    Try: JDeveloper and ADF

  • ADF 11.1.1.2 application -  Jmeter Stress testing issues

    All,
    I followed Chris Muir's blog and was trying to do stress testing of my ADF application.
    I have a login page before going to application pages, I am getting below message for the application URLs:
    <html><head><meta http-equiv="refresh" content="10;url=/EwarrantyApplication-ViewController-context-root/faces/profiles?_adf.ctrl-state=2m479g1dp_4"></head><body>Because of inactivity, your session has timed out and is no longer active. The page will automatically be reloaded in 10 seconds; if not, click here.</body></html>
    Looks like it is not getting authenticated/not getting new session. I am using form based authentication j_security_check submission using j_username and j_password.
    Appreciate if any body can share their inputs.
    Here is the .jmx file contents:

    <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="/EwarrantyApplication-ViewController-context-root/" enabled="true">
    <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" enabled="true">
    <collectionProp name="Arguments.arguments"/>
    </elementProp>
    <stringProp name="HTTPSampler.domain">afsodevap101</stringProp>
    <stringProp name="HTTPSampler.port">7016</stringProp>
    <stringProp name="HTTPSampler.connect_timeout"></stringProp>
    <stringProp name="HTTPSampler.response_timeout"></stringProp>
    <stringProp name="HTTPSampler.protocol">http</stringProp>
    <stringProp name="HTTPSampler.contentEncoding"></stringProp>
    <stringProp name="HTTPSampler.path">/EwarrantyApplication-ViewController-context-root/</stringProp>
    <stringProp name="HTTPSampler.method">GET</stringProp>
    <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
    <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
    <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
    <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
    <stringProp name="HTTPSampler.implementation">Java</stringProp>
    <boolProp name="HTTPSampler.monitor">false</boolProp>
    <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
    </HTTPSamplerProxy>
    <hashTree>
    <HeaderManager guiclass="HeaderPanel" testclass="HeaderManager" testname="HTTP Header Manager" enabled="true">
    <collectionProp name="HeaderManager.headers">
    <elementProp name="Accept-Language" elementType="Header">
    <stringProp name="Header.name">Accept-Language</stringProp>
    <stringProp name="Header.value">en-us,en;q=0.5</stringProp>
    </elementProp>
    <elementProp name="Accept" elementType="Header">
    <stringProp name="Header.name">Accept</stringProp>
    <stringProp name="Header.value">text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8</stringProp>
    </elementProp>
    <elementProp name="User-Agent" elementType="Header">
    <stringProp name="Header.name">User-Agent</stringProp>
    <stringProp name="Header.value">Mozilla/5.0 (Windows NT 6.1; WOW64; rv:13.0) Gecko/20100101 Firefox/13.0.1</stringProp>
    </elementProp>
    <elementProp name="Referer" elementType="Header">
    <stringProp name="Header.name">Referer</stringProp>
    <stringProp name="Header.value">http://afsodevap101:7016/EwarrantyApplication-ViewController-context-root/login.html</stringProp>
    </elementProp>
    <elementProp name="Accept-Encoding" elementType="Header">
    <stringProp name="Header.name">Accept-Encoding</stringProp>
    <stringProp name="Header.value">gzip, deflate</stringProp>
    </elementProp>
    </collectionProp>
    </HeaderManager>
    <hashTree/>
    </hashTree>
    <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="/EwarrantyApplication-ViewController-context-root/" enabled="true">
    <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" enabled="true">
    <collectionProp name="Arguments.arguments">
    <elementProp name="_afrLoop" elementType="HTTPArgument">
    <boolProp name="HTTPArgument.always_encode">false</boolProp>
    <stringProp name="Argument.name">_afrLoop</stringProp>
    <stringProp name="Argument.value">${afrLoop}</stringProp>
    <stringProp name="Argument.metadata">=</stringProp>
    <boolProp name="HTTPArgument.use_equals">true</boolProp>
    </elementProp>
    <elementProp name="_afrWindowMode" elementType="HTTPArgument">
    <boolProp name="HTTPArgument.always_encode">false</boolProp>
    <stringProp name="Argument.name">_afrWindowMode</stringProp>
    <stringProp name="Argument.value">0</stringProp>
    <stringProp name="Argument.metadata">=</stringProp>
    <boolProp name="HTTPArgument.use_equals">true</boolProp>
    </elementProp>
    <elementProp name="_afrWindowId" elementType="HTTPArgument">
    <boolProp name="HTTPArgument.always_encode">false</boolProp>
    <stringProp name="Argument.name">_afrWindowId</stringProp>
    <stringProp name="Argument.value">${afrWindowId}</stringProp>
    <stringProp name="Argument.metadata">=</stringProp>
    <boolProp name="HTTPArgument.use_equals">true</boolProp>
    </elementProp>
    </collectionProp>
    </elementProp>
    <stringProp name="HTTPSampler.domain">afsodevap101</stringProp>
    <stringProp name="HTTPSampler.port">7016</stringProp>
    <stringProp name="HTTPSampler.connect_timeout"></stringProp>
    <stringProp name="HTTPSampler.response_timeout"></stringProp>
    <stringProp name="HTTPSampler.protocol">http</stringProp>
    <stringProp name="HTTPSampler.contentEncoding">utf-8</stringProp>
    <stringProp name="HTTPSampler.path">/EwarrantyApplication-ViewController-context-root/</stringProp>
    <stringProp name="HTTPSampler.method">GET</stringProp>
    <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
    <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
    <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
    <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
    <stringProp name="HTTPSampler.implementation">Java</stringProp>
    <boolProp name="HTTPSampler.monitor">false</boolProp>
    <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
    </HTTPSamplerProxy>
    <hashTree>
    <HeaderManager guiclass="HeaderPanel" testclass="HeaderManager" testname="HTTP Header Manager" enabled="true">
    <collectionProp name="HeaderManager.headers">
    <elementProp name="Accept-Language" elementType="Header">
    <stringProp name="Header.name">Accept-Language</stringProp>
    <stringProp name="Header.value">en-us,en;q=0.5</stringProp>
    </elementProp>
    <elementProp name="Accept" elementType="Header">
    <stringProp name="Header.name">Accept</stringProp>
    <stringProp name="Header.value">text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8</stringProp>
    </elementProp>
    <elementProp name="User-Agent" elementType="Header">
    <stringProp name="Header.name">User-Agent</stringProp>
    <stringProp name="Header.value">Mozilla/5.0 (Windows NT 6.1; WOW64; rv:13.0) Gecko/20100101 Firefox/13.0.1</stringProp>
    </elementProp>
    <elementProp name="Referer" elementType="Header">
    <stringProp name="Header.name">Referer</stringProp>
    <stringProp name="Header.value">http://afsodevap101:7016/EwarrantyApplication-ViewController-context-root/</stringProp>
    </elementProp>
    <elementProp name="Accept-Encoding" elementType="Header">
    <stringProp name="Header.name">Accept-Encoding</stringProp>
    <stringProp name="Header.value">gzip, deflate</stringProp>
    </elementProp>
    </collectionProp>
    </HeaderManager>
    <hashTree/>
    </hashTree>
    <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="/EwarrantyApplication-ViewController-context-root/faces/profiles?_adf.ctrl-state=2m479g1dp_4" enabled="true">
    <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" enabled="true">
    <collectionProp name="Arguments.arguments">
    <elementProp name="org.apache.myfaces.trinidad.faces.FORM" elementType="HTTPArgument">
    <boolProp name="HTTPArgument.always_encode">false</boolProp>
    <stringProp name="Argument.name">org.apache.myfaces.trinidad.faces.FORM</stringProp>
    <stringProp name="Argument.value">f1</stringProp>
    <stringProp name="Argument.metadata">=</stringProp>
    <boolProp name="HTTPArgument.use_equals">true</boolProp>
    </elementProp>
    <elementProp name="javax.faces.ViewState" elementType="HTTPArgument">
    <boolProp name="HTTPArgument.always_encode">false</boolProp>
    <stringProp name="Argument.name">javax.faces.ViewState</stringProp>
    <stringProp name="Argument.value">${javax.faces.ViewState}</stringProp>
    <stringProp name="Argument.metadata">=</stringProp>
    <boolProp name="HTTPArgument.use_equals">true</boolProp>
    </elementProp>
    <elementProp name="oracle.adf.view.rich.DELTAS" elementType="HTTPArgument">
    <boolProp name="HTTPArgument.always_encode">false</boolProp>
    <stringProp name="Argument.name">oracle.adf.view.rich.DELTAS</stringProp>
    <stringProp name="Argument.value">%7Bpt1%3At1%3D%7Brows%3D3%2CscrollTopRowKey%7Cp%3D0%7D%7D</stringProp>
    <stringProp name="Argument.metadata">=</stringProp>
    <boolProp name="HTTPArgument.use_equals">true</boolProp>
    </elementProp>
    <elementProp name="event" elementType="HTTPArgument">
    <boolProp name="HTTPArgument.always_encode">false</boolProp>
    <stringProp name="Argument.name">event</stringProp>
    <stringProp name="Argument.value">pt1%3At1%3A1%3Aot5</stringProp>
    <stringProp name="Argument.metadata">=</stringProp>
    <boolProp name="HTTPArgument.use_equals">true</boolProp>
    </elementProp>
    <elementProp name="event.pt1%3At1%3A1%3Aot5" elementType="HTTPArgument">
    <boolProp name="HTTPArgument.always_encode">false</boolProp>
    <stringProp name="Argument.name">event.pt1%3At1%3A1%3Aot5</stringProp>
    <stringProp name="Argument.value">%3Cm+xmlns%3D%22http%3A%2F%2Foracle.com%2FrichClient%2Fcomm%22%3E%3Ck+v%3D%22type%22%3E%3Cs%3Eaction%3C%2Fs%3E%3C%2Fk%3E%3C%2Fm%3E</stringProp>
    <stringProp name="Argument.metadata">=</stringProp>
    <boolProp name="HTTPArgument.use_equals">true</boolProp>
    </elementProp>
    </collectionProp>
    </elementProp>
    <stringProp name="HTTPSampler.domain">afsodevap101</stringProp>
    <stringProp name="HTTPSampler.port">7016</stringProp>
    <stringProp name="HTTPSampler.connect_timeout"></stringProp>
    <stringProp name="HTTPSampler.response_timeout"></stringProp>
    <stringProp name="HTTPSampler.protocol">http</stringProp>
    <stringProp name="HTTPSampler.contentEncoding"></stringProp>
    <stringProp name="HTTPSampler.path">/EwarrantyApplication-ViewController-context-root/faces/profiles?_adf.ctrl-state=2m479g1dp_4</stringProp>
    <stringProp name="HTTPSampler.method">POST</stringProp>
    <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
    <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
    <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
    <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
    <stringProp name="HTTPSampler.implementation">Java</stringProp>
    <boolProp name="HTTPSampler.monitor">false</boolProp>
    <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
    </HTTPSamplerProxy>
    <hashTree>
    <HeaderManager guiclass="HeaderPanel" testclass="HeaderManager" testname="HTTP Header Manager" enabled="true">
    <collectionProp name="HeaderManager.headers">
    <elementProp name="Content-Type" elementType="Header">
    <stringProp name="Header.name">Content-Type</stringProp>
    <stringProp name="Header.value">application/x-www-form-urlencoded</stringProp>
    </elementProp>
    <elementProp name="Accept-Language" elementType="Header">
    <stringProp name="Header.name">Accept-Language</stringProp>
    <stringProp name="Header.value">en-us,en;q=0.5</stringProp>
    </elementProp>
    <elementProp name="Accept" elementType="Header">
    <stringProp name="Header.name">Accept</stringProp>
    <stringProp name="Header.value">text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8</stringProp>
    </elementProp>
    <elementProp name="User-Agent" elementType="Header">
    <stringProp name="Header.name">User-Agent</stringProp>
    <stringProp name="Header.value">Mozilla/5.0 (Windows NT 6.1; WOW64; rv:13.0) Gecko/20100101 Firefox/13.0.1</stringProp>
    </elementProp>
    <elementProp name="Referer" elementType="Header">
    <stringProp name="Header.name">Referer</stringProp>
    <stringProp name="Header.value">http://afsodevap101:7016/EwarrantyApplication-ViewController-context-root/?_afrLoop=17373255201655936&amp;_afrWindowMode=0&amp;_afrWindowId=null</stringProp>
    </elementProp>
    <elementProp name="Accept-Encoding" elementType="Header">
    <stringProp name="Header.name">Accept-Encoding</stringProp>
    <stringProp name="Header.value">gzip, deflate</stringProp>
    </elementProp>
    </collectionProp>
    </HeaderManager>
    <hashTree/>
    </hashTree>
    <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="/EwarrantyApplication-ViewController-context-root/faces/customerSelection?_adf.ctrl-state=2m479g1dp_4" enabled="true">
    <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" enabled="true">
    <collectionProp name="Arguments.arguments">
    <elementProp name="pt1%3Asoc1" elementType="HTTPArgument">
    <boolProp name="HTTPArgument.always_encode">false</boolProp>
    <stringProp name="Argument.name">pt1%3Asoc1</stringProp>
    <stringProp name="Argument.value">0</stringProp>
    <stringProp name="Argument.metadata">=</stringProp>
    <boolProp name="HTTPArgument.use_equals">true</boolProp>
    </elementProp>
    <elementProp name="pt1%3Asoc2" elementType="HTTPArgument">
    <boolProp name="HTTPArgument.always_encode">false</boolProp>
    <stringProp name="Argument.name">pt1%3Asoc2</stringProp>
    <stringProp name="Argument.value"></stringProp>
    <stringProp name="Argument.metadata">=</stringProp>
    <boolProp name="HTTPArgument.use_equals">true</boolProp>
    </elementProp>
    <elementProp name="pt1%3Ait3" elementType="HTTPArgument">
    <boolProp name="HTTPArgument.always_encode">false</boolProp>
    <stringProp name="Argument.name">pt1%3Ait3</stringProp>
    <stringProp name="Argument.value"></stringProp>
    <stringProp name="Argument.metadata">=</stringProp>
    <boolProp name="HTTPArgument.use_equals">true</boolProp>
    </elementProp>
    <elementProp name="pt1%3Ait1" elementType="HTTPArgument">
    <boolProp name="HTTPArgument.always_encode">false</boolProp>
    <stringProp name="Argument.name">pt1%3Ait1</stringProp>
    <stringProp name="Argument.value"></stringProp>
    <stringProp name="Argument.metadata">=</stringProp>
    <boolProp name="HTTPArgument.use_equals">true</boolProp>
    </elementProp>
    <elementProp name="pt1%3Ait2" elementType="HTTPArgument">
    <boolProp name="HTTPArgument.always_encode">false</boolProp>
    <stringProp name="Argument.name">pt1%3Ait2</stringProp>
    <stringProp name="Argument.value"></stringProp>
    <stringProp name="Argument.metadata">=</stringProp>
    <boolProp name="HTTPArgument.use_equals">true</boolProp>
    </elementProp>
    <elementProp name="org.apache.myfaces.trinidad.faces.FORM" elementType="HTTPArgument">
    <boolProp name="HTTPArgument.always_encode">false</boolProp>
    <stringProp name="Argument.name">org.apache.myfaces.trinidad.faces.FORM</stringProp>
    <stringProp name="Argument.value">f1</stringProp>
    <stringProp name="Argument.metadata">=</stringProp>
    <boolProp name="HTTPArgument.use_equals">true</boolProp>
    </elementProp>
    <elementProp name="javax.faces.ViewState" elementType="HTTPArgument">
    <boolProp name="HTTPArgument.always_encode">false</boolProp>
    <stringProp name="Argument.name">javax.faces.ViewState</stringProp>
    <stringProp name="Argument.value">${javax.faces.ViewState}</stringProp>
    <stringProp name="Argument.metadata">=</stringProp>
    <boolProp name="HTTPArgument.use_equals">true</boolProp>
    </elementProp>
    <elementProp name="event" elementType="HTTPArgument">
    <boolProp name="HTTPArgument.always_encode">false</boolProp>
    <stringProp name="Argument.name">event</stringProp>
    <stringProp name="Argument.value">pt1%3Acl2</stringProp>
    <stringProp name="Argument.metadata">=</stringProp>
    <boolProp name="HTTPArgument.use_equals">true</boolProp>
    </elementProp>
    <elementProp name="event.pt1%3Acl2" elementType="HTTPArgument">
    <boolProp name="HTTPArgument.always_encode">false</boolProp>
    <stringProp name="Argument.name">event.pt1%3Acl2</stringProp>
    <stringProp name="Argument.value">%3Cm+xmlns%3D%22http%3A%2F%2Foracle.com%2FrichClient%2Fcomm%22%3E%3Ck+v%3D%22type%22%3E%3Cs%3Eaction%3C%2Fs%3E%3C%2Fk%3E%3C%2Fm%3E</stringProp>
    <stringProp name="Argument.metadata">=</stringProp>
    <boolProp name="HTTPArgument.use_equals">true</boolProp>
    </elementProp>
    <elementProp name="_adf.ctrl-state" elementType="HTTPArgument">
    <boolProp name="HTTPArgument.always_encode">false</boolProp>
    <stringProp name="Argument.value">${adf.crtl-state}</stringProp>
    <stringProp name="Argument.metadata">=</stringProp>
    <boolProp name="HTTPArgument.use_equals">true</boolProp>
    <stringProp name="Argument.name">_adf.ctrl-state</stringProp>
    </elementProp>
    </collectionProp>
    </elementProp>
    <stringProp name="HTTPSampler.domain">afsodevap101</stringProp>
    <stringProp name="HTTPSampler.port">7016</stringProp>
    <stringProp name="HTTPSampler.connect_timeout"></stringProp>
    <stringProp name="HTTPSampler.response_timeout"></stringProp>
    <stringProp name="HTTPSampler.protocol">http</stringProp>
    <stringProp name="HTTPSampler.contentEncoding"></stringProp>
    <stringProp name="HTTPSampler.path">/EwarrantyApplication-ViewController-context-root/faces/customerSelection</stringProp>
    <stringProp name="HTTPSampler.method">POST</stringProp>
    <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
    <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
    <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
    <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
    <stringProp name="HTTPSampler.implementation">Java</stringProp>
    <boolProp name="HTTPSampler.monitor">false</boolProp>
    <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
    </HTTPSamplerProxy>
    <hashTree>
    <HeaderManager guiclass="HeaderPanel" testclass="HeaderManager" testname="HTTP Header Manager" enabled="true">
    <collectionProp name="HeaderManager.headers">
    <elementProp name="Content-Type" elementType="Header">
    <stringProp name="Header.name">Content-Type</stringProp>
    <stringProp name="Header.value">application/x-www-form-urlencoded</stringProp>
    </elementProp>
    <elementProp name="Accept-Language" elementType="Header">
    <stringProp name="Header.name">Accept-Language</stringProp>
    <stringProp name="Header.value">en-us,en;q=0.5</stringProp>
    </elementProp>
    <elementProp name="Accept" elementType="Header">
    <stringProp name="Header.name">Accept</stringProp>
    <stringProp name="Header.value">text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8</stringProp>
    </elementProp>
    <elementProp name="User-Agent" elementType="Header">
    <stringProp name="Header.name">User-Agent</stringProp>
    <stringProp name="Header.value">Mozilla/5.0 (Windows NT 6.1; WOW64; rv:13.0) Gecko/20100101 Firefox/13.0.1</stringProp>
    </elementProp>
    <elementProp name="Referer" elementType="Header">
    <stringProp name="Header.name">Referer</stringProp>
    <stringProp name="Header.value">http://afsodevap101:7016/EwarrantyApplication-ViewController-context-root/faces/profiles?_adf.ctrl-state=2m479g1dp_4</stringProp>
    </elementProp>
    <elementProp name="Accept-Encoding" elementType="Header">
    <stringProp name="Header.name">Accept-Encoding</stringProp>
    <stringProp name="Header.value">gzip, deflate</stringProp>
    </elementProp>
    </collectionProp>
    </HeaderManager>
    <hashTree/>
    </hashTree>
    <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="/EwarrantyApplication-ViewController-context-root/faces/Run" enabled="true">
    <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" enabled="true">
    <collectionProp name="Arguments.arguments">
    <elementProp name="_adf.ctrl-state" elementType="HTTPArgument">
    <boolProp name="HTTPArgument.always_encode">false</boolProp>
    <stringProp name="Argument.name">_adf.ctrl-state</stringProp>
    <stringProp name="Argument.value">${adf.crtl-state}</stringProp>
    <stringProp name="Argument.metadata">=</stringProp>
    <boolProp name="HTTPArgument.use_equals">true</boolProp>
    </elementProp>
    <elementProp name="Adf-Rich-Message" elementType="HTTPArgument">
    <boolProp name="HTTPArgument.always_encode">false</boolProp>
    <stringProp name="Argument.name">Adf-Rich-Message</stringProp>
    <stringProp name="Argument.value">true</stringProp>
    <stringProp name="Argument.metadata">=</stringProp>
    <boolProp name="HTTPArgument.use_equals">true</boolProp>
    </elementProp>
    <elementProp name="unique" elementType="HTTPArgument">
    <boolProp name="HTTPArgument.always_encode">false</boolProp>
    <stringProp name="Argument.name">unique</stringProp>
    <stringProp name="Argument.value">1342466277291</stringProp>
    <stringProp name="Argument.metadata">=</stringProp>
    <boolProp name="HTTPArgument.use_equals">true</boolProp>
    </elementProp>
    <elementProp name="oracle.adf.view.rich.STREAM" elementType="HTTPArgument">
    <boolProp name="HTTPArgument.always_encode">false</boolProp>
    <stringProp name="Argument.name">oracle.adf.view.rich.STREAM</stringProp>
    <stringProp name="Argument.value">pt21:r2:0:t6</stringProp>
    <stringProp name="Argument.metadata">=</stringProp>
    <boolProp name="HTTPArgument.use_equals">true</boolProp>
    </elementProp>
    <elementProp name="javax.faces.ViewState" elementType="HTTPArgument">
    <boolProp name="HTTPArgument.always_encode">false</boolProp>
    <stringProp name="Argument.name">javax.faces.ViewState</stringProp>
    <stringProp name="Argument.value">${javax.faces.ViewState}</stringProp>
    <stringProp name="Argument.metadata">=</stringProp>
    <boolProp name="HTTPArgument.use_equals">true</boolProp>
    </elementProp>
    </collectionProp>
    </elementProp>
    <stringProp name="HTTPSampler.domain">afsodevap101</stringProp>
    <stringProp name="HTTPSampler.port">7016</stringProp>
    <stringProp name="HTTPSampler.connect_timeout"></stringProp>
    <stringProp name="HTTPSampler.response_timeout"></stringProp>
    <stringProp name="HTTPSampler.protocol">http</stringProp>
    <stringProp name="HTTPSampler.contentEncoding"></stringProp>
    <stringProp name="HTTPSampler.path">/EwarrantyApplication-ViewController-context-root/faces/Run</stringProp>
    <stringProp name="HTTPSampler.method">GET</stringProp>
    <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
    <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
    <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
    <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
    <stringProp name="HTTPSampler.implementation">Java</stringProp>
    <boolProp name="HTTPSampler.monitor">false</boolProp>
    <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
    </HTTPSamplerProxy>
    <hashTree>
    <HeaderManager guiclass="HeaderPanel" testclass="HeaderManager" testname="HTTP Header Manager" enabled="true">
    <collectionProp name="HeaderManager.headers">
    <elementProp name="Accept-Language" elementType="Header">
    <stringProp name="Header.name">Accept-Language</stringProp>
    <stringProp name="Header.value">en-us,en;q=0.5</stringProp>
    </elementProp>
    <elementProp name="Accept" elementType="Header">
    <stringProp name="Header.name">Accept</stringProp>
    <stringProp name="Header.value">text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8</stringProp>
    </elementProp>
    <elementProp name="User-Agent" elementType="Header">
    <stringProp name="Header.name">User-Agent</stringProp>
    <stringProp name="Header.value">Mozilla/5.0 (Windows NT 6.1; WOW64; rv:13.0) Gecko/20100101 Firefox/13.0.1</stringProp>
    </elementProp>
    <elementProp name="Referer" elementType="Header">
    <stringProp name="Header.name">Referer</stringProp>
    <stringProp name="Header.value">http://afsodevap101:7016/EwarrantyApplication-ViewController-context-root/faces/customerSelection?_adf.ctrl-state=2m479g1dp_4</stringProp>
    </elementProp>
    <elementProp name="Accept-Encoding" elementType="Header">
    <stringProp name="Header.name">Accept-Encoding</stringProp>
    <stringProp name="Header.value">gzip, deflate</stringProp>
    </elementProp>
    </collectionProp>
    </HeaderManager>
    <hashTree/>
    </hashTree>

  • Stress test tool and guidelines for tuning ADF 11g

    Hi all,
    I am working our ADF 11g application on load & stress testing. The load test works fine with some millions of full dummy rows (this generated data tool is easily written by ourself). The tunning only was done with only indexing. But with stress I'm concerning with RAM and other tunning parameters such IO and share pool from OS to DB and to WL servers and how to tune it for around 200-300 concurrent connections. I'm studying Jmeter for this purpose but still not get the answer. I have tested with Oracle Openscript but it worked very heavily slow :(.
    The question here is that do you have any experiences on tuning parameters for such requirements and what is the best automatic test tool for testing multi-connections, please advise me.
    Thank you very much.

    Oracle Application Testing Suite has specific support for ADF testing:
    http://www.oracle.com/technetwork/oem/app-test/index.html
    http://www.testingreflections.com/node/view/8538
    Some info on JMeter: http://www.connotea.org/user/jdeveloper/tag/jmeter
    Another option: http://www.yenlo.nl/harryvanoosten/2010/03/10/load-testing-an-adf-11g-application/
    Some entries about tuning: http://www.connotea.org/user/jdeveloper/tag/tuning

  • Stress Test Oracle 9i

    Hello,
    I want to perform stress tests on my Oracle 9i database. Is there a software that you can recommend to use. Maybe even scripts or shareware. Thank you.

    There are a variety of third party load test tools available, generally part of a suite of QA tools. You can also build your own test harnass.
    99% of the work, however, is in figuring out what to run to put a representative stress on your application and, thus, your database. Figure out a representative number of OLTP users, a representative number of DSS users, an appropriate overlap in time and in data, etc.
    Justin
    Distributed Database Consulting, Inc.
    http://www.ddbcinc.com/askDDBC

  • SwingBench an Oracle Stress Test and Benchmark tool

    Last week I was in a RAC workshop hosted by Oracle.
    In the workshop, Oracle using a tool called Swingbench to generate load for RAC testing. Which is pretty interesting and good tools.
    Since I have seen quite a few inquiry regarding a good benchmarking and load generating tools. I thought it might be good idea to share it.
    It's free and can be downloaded here.
    http://www.dominicgiles.com/swingbench.html
    Swingbench is a free load generator (and benchmarks) designed to stress test an Oracle database (9i or 10g)

    Hi,
    To add to what yingkuan said, there is one more free stress testing tool called hammerora.
    http://hammerora.sourceforge.net/
    Regards

  • Oracle ADF - Open Script functional testing - Error Identification scenarios

    Hi All,
    We have been exploring OATS - Open script functional testing tool for ADF application regression testing.
    We were able to record the transactions and play back those recordings, but we were not able to understand the scenarios where tool will detect as error/ issue.
    Based on our understanding, Open script remembers as objects/Xpaths from screens and use them while playing back.
    Could you please provide scenarios how tool identifies as errors..ex.component is removed or modified?
    Simple example:
    1) Open page A
    2) Click on image 1 on page A
    3) Click on image 2 on page A
    4) Click button to navigate to Page B.
    In this scenario, when we play back without changing it works fine
    but if we remove or comment  "image 2 on Page A " it's not throwing as error. it's continuing to next step.
    commenting or removing actions/components is not considered as issue.
    Thanks for your suggestions

    Hello Bala
    What is your Java version? JInitiator or Sun?
    When exactly does this error occur?
    What is your OATS version?
    Have you ran a Diagnose Tool (Help Menu in OpenScript)?
    Thx
    JB

  • ADF applications automated testing

    Is there an automated test tool used by the the ADF team at Oracle? Or any one out there, have successfully used an automated tool for ADF applications?

    This depends on the kind of test you want to make and the technology stack your app is using.
    JUnit is always worse a try (it integrated in JDev after some updates and give you rudimentary test classes).
    This [blog entry|http://one-size-doesnt-fit-all.blogspot.com/2009/06/stress-load-testing-web-applications.html] from Chris Muir handles load and stress testing.
    This [blog entry|http://biemond.blogspot.com/2009/07/unit-test-your-composite-application.html] from Edwin Biemond covers BEPL and SOA.
    Timo

  • Database base storage stress test

    Hi,
    I have a ucm 11g instance up and running with SSO.
    I need to test database storage against filesystem storage.
    Does anyone have any suggestions on how to test this?
    Also I'm sure I read somewhere (but I can't find it now) that once I go in one direction I can't go back, does anyone have any details about this?
    Many thanks
    James

    First of all, take a look at File Store Provider (here: http://download.oracle.com/docs/cd/E14571_01/doc.1111/e10792/c02_settings005.htm#CSMSP445)
    In general, filesystem storage is always used even if you store data in the database, in the end. It is, though, understood as a temporary storage. In theory, you can keep your files in both locations and I see no reason why you should not be able to go from FS to DB and back, BUT you have to consider consequences (you might have to rebuild indexes or even migrate data from one storage to the other).
    As for stress tests, first you have to decide WHAT you want to test. Potential candidates are:
    - checkin of a single item (wasted effort: since FS is always used as an intermediate storage it will always be a bit faster)
    - mass checkin (e.g. from Batch Loader - especially if you use Fast Checkin settings, db can be a bit faster, but you will need a real lot of small files)
    - search
    - update (metadata - wasted effort: should be the same)
    - backup
    - migration of content
    Then, you will have to setup two environments with more-or-less the same conditions (CPU power, memory, disk speed).
    And finally, you will have to create and run you test cases. I'd suggest to automate stress tests via writing a program calling the same services with the same data. Use WebServices (if non-Java) or RIDC (if Java).
    Alternatively, if your task is "to get results" rather than "perform stress tests", you could try to approach consulting services or project managers to provide some normalized results for you. Something can be obtained in this whitepaper: http://www.oracle.com/us/products/middleware/content-management/ecm-extreme-performance-wp-077977.pdf

  • Problem in Oracle ADF with JDeveloper. JBO25001

    Hello All,
    I have to develop an application using oracle ADF and JDeveloper. To famalirize my self with the technology, I downloaded the Oracle ADF tutorial "Tutorial for Forms/4GL developers" from Oracle site.
    I am following this tutorial line by line, but still getting an error. I have created
    1) Entities
    2) Associations
    3) Views
    4) ViewLinks
    5) Application Module
    all by wizard.
    After I added my view and view link into the application module and tried to test it it gave me the following error.
    (oracle.jbo.common.ampool.ApplicationPoolException) JBO-30003: The application pool (.10E97657A25) failed to checkout an application module due to the following exception:
    ----- LEVEL 1: DETAIL 0 -----
    (oracle.jbo.JboException) JBO-29000: Unexpected exception caught: oracle.jbo.JboException, msg=JBO-29000: Unexpected exception caught: oracle.jbo.NameClashException, msg=JBO-25001: Name ServiceRequestsTable of object type Attribute already exists
    ----- LEVEL 2: DETAIL 0 -----
    (oracle.jbo.JboException) JBO-29000: Unexpected exception caught: oracle.jbo.NameClashException, msg=JBO-25001: Name ServiceRequestsTable of object type Attribute already exists
    ----- LEVEL 3: DETAIL 0 -----
    (oracle.jbo.NameClashException) JBO-25001: Name ServiceRequestsTable of object type Attribute already exists
    I changed the names of each object but still the problem persisted.
    If any body can help me on this I will really appreciate it. Thanx a ton in advance.
    I have downloaded and using the latest JDeveloper version 10.1.3.1.0.3984
    Please help me on this.
    Regards,
    Saket Maheshwary

    Saket,
    Did you ever get this situation resolved?
    I'm working thru the tutorial myself and get the same error except the object is Product.
    Do you have any clues?
    Thanks,
    Lonnie Spears

  • User is thrown from the Application under Cluster stress test

    Hi All,
    i have ADF/ADF faces application running on WLS 10.3.5.0 Cluster Environment (with 2 nodes).
    I'm running application using in memory Session replication.
    The problem which i have is that under the stress test (about 10-20 users) sometimes user suddenly is presented with Login Screen (more rare with session expired message) ! This also can happens immediately after user login .
    That happens randomly on different part of the System. In more of the cases user is thrown independently from other users but
    sometimes all the users are thrown simultaniously.
    When the System is tested with only one user this effect appears very rare.
    What i have done is to enable Cluster and Replication debugging to see if there some errors within Http Session Replication. However there isn't any errors appeared. From the application part everything seems fine.
    I suspect that the proxy could cause a problem (by forwarding the request to secondary instead of primary server). Currenltly i'm using HttpClusterSerlvet installed by default from WebLogic Configurator on dedicated Managed Server.
    Can somebody give any advice with this ?
    Thanks in advance,
    Krasimir

    Krashmir,
    Did you find any solution for this problem. I am also facing the similar issue.
    Thanks,
    Ram

  • Code not able to get resultset in method in oracle adf

    The following is a method written in AppmoduleImpl.java of oracle adf. The resultset rs returns a null resultset(it has no rows). Although, the query works fine when tested separately. Plzz help
    public void insert( ) {
    try {
    Connection conn;
    conn = DriverManager.getConnection("jdbc:oracle:thin:@133.12.0.5:1521:fpctest","fpcqry","fpcqry");
    PreparedStatement ps = conn.prepareStatement(" SELECT * FROM v_tc_tdc_para");
    ResultSet rs = ps.executeQuery();
    catch(SQLException e) {
    System.out.println("Error on Insert" + e);
    }

    Connection conn = null;
    ApplicationModuleFactory amFactory = null;
    try {
    String url = "jdbc:oracle:thin:@133.12.0.5:1521:fpctest";
    conn = DriverManager.getConnection(url, "fpcqry", "fpcqry");
    String amDef = "test.AppModule";
    String config = "AppModuleLocal";
    amFactory = ApplicationModuleFactory.getInstamce();
    AppModuleImpl am =
    (AppModuleImpl)amFactory.createRootApplicationModule(amDef,
    config,
    conn);
    ViewObjectImpl vo = am.getDepartmentsView1();
    vo.executeQuery();
    while (vo.hasNext()) {
    Row row = vo.next();
    System.out.println(vo.getCurrentRowIndex() + ". " +
    row.getAttribute("DepartmentId") + " " +
    row.getAttribute("DepartmentName"));
    Please refer
    http://download.oracle.com/docs/cd/E14571_01/web.1111/b31974/bcservices.htm#ADFFD1501
    Edited by: dvohra16 on Apr 2, 2011 7:52 PM

  • ConnectionBean fail with stress test. please assist.

    I am using the following to get connected to database.
    package com.db;
    import java.util.*;
    import java.io.*;
    import java.sql.*;
    import javax.servlet.http.*;
    public class ConnectionManager implements HttpSessionBindingListener
      private Connection connection;
      private Statement statement;
      private String driver = "";
      private String dbURL = "";
      private String login = "";
      private String password = "";
    static public void main(String[] args)
          ConnectionManager cm = new ConnectionManager();
      } // main
    public ConnectionManager()
           Properties Prop = new Properties();
           try {
              InputStream configStream = getClass().getResourceAsStream("/config/database.properties");
                   Prop.load(configStream);
              configStream.close();
               } catch(IOException e) {
                      System.out.println("Error: Cannot laod configuration file ");
           driver =Prop.getProperty("driver");
           dbURL = Prop.getProperty("dbURL");
            login = Prop.getProperty("login");
            password = Prop.getProperty("password");
    public void setDriver (String sDriver)
       if (sDriver != null)
           driver = sDriver;
    public String getDriver ()
       return driver;
    public void setDbURL (String sDbURL)
        if (sDbURL != null)
         dbURL = sDbURL;
    public String getDbURL()
       return dbURL;
    public void setLogin (String sLogin)
       if (sLogin != null)
          login = sLogin;
    public String getLogin()
       return login;
    public void setPassword (String sPassword)
       if (sPassword != null)
          password = sPassword;
    private String getPassword()
       return password;
    private void getConn ()
       try
          Class.forName(driver);
          connection = DriverManager.getConnection(dbURL,login,password);
          statement=connection.createStatement();
       catch (ClassNotFoundException e)
          System.out.println("ConnectionManager: driver unavailable");
          connection = null;
       catch (SQLException e)
          System.out.println("ConnectionManager: driver not loaded");
          connection = null;
    public Connection getConnection()
       if (connection == null)
          getConn();
       return connection;
    public void commit() throws SQLException
        connection.commit();
    public void rollback() throws SQLException
        connection.rollback();
    public void setAutoCommit(boolean autoCommit)
        throws SQLException
        connection.setAutoCommit(autoCommit );
    public ResultSet executeQuery(String sql) throws SQLException
        if (connection == null || connection.isClosed())
            getConn();
        return statement.executeQuery(sql);
    public int executeUpdate(String sql) throws SQLException
        if (connection == null || connection.isClosed())
            getConn();
        return statement.executeUpdate(sql);
    public void valueBound(HttpSessionBindingEvent event)
        System.err.println("ConnectionBean: in the valueBound method");
        try
          if (connection == null || connection.isClosed())
            connection = DriverManager.getConnection(dbURL,login,password);
            statement = connection.createStatement();
        catch (SQLException e)
          e.printStackTrace();
          connection = null;
    public void valueUnbound(HttpSessionBindingEvent event)
        close();
    public void close()
       try
           if ( connection != null
                || !connection.isClosed())
            connection.close();
       catch (SQLException e)
          e.printStackTrace();
    }This is what I use to test this code:
    <%@ page import="java.sql.*" %>
    <%@ page import="java.text.*" %>
    <%@ page import="java.util.*"%>
    <%@ page import="java.io.*" %>
    <p>
    Testing DBConnection Bean. <p>
    <%
    String sql="SELECT * FROM BS_PERSON" ;
    com.db.ConnectionManager CM = new com.db.ConnectionManager();
    ResultSet rset = CM.executeQuery(sql);
    while (rset.next()) {
       out.println(rset.getString("PERSON_USERCODE") + "<br>");
    %>When I stress test it, the code perform well for a while and then throw the following on Tomcat:
    ConnectionManager: driver not loaded
    ConnectionManager: driver not loaded
    ConnectionManager: driver not loaded
    Is there anything I could improve?
    For application that has many database read/write, is there any open source connection program that uses connection pooling?
    Thank you.

    Thank you for the prompt response.
    Yes. the code works and the data set gets return when I execute the code. It only fail with stress test after say 150-160 hits.
    I have put in the printStack Trace and got the following:
    ConnectionManager: driver not loaded
    java.sql.SQLException: ORA-00020: maximum number of processes (150) exceeded
         at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
         at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289)
         at oracle.jdbc.ttc7.O3log.receive1st(O3log.java:407)
         at oracle.jdbc.ttc7.TTC7Protocol.logon(TTC7Protocol.java:259)
         at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:346)
         at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:468)
         at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:314)
         at java.sql.DriverManager.getConnection(DriverManager.java:512)
         at java.sql.DriverManager.getConnection(DriverManager.java:171)
         at com.db.ConnectionManager.getConn(ConnectionManager.java:106)
         at com.db.ConnectionManager.executeQuery(ConnectionManager.java:154)
         at org.apache.jsp.dbconnection_jsp._jspService(dbconnection_jsp.java:76)
    Could it be that I didn't specifically close the connection? How could I go about doing it?
    Thank you.

  • ADF - MyFaces, HttpUnit testing problem with Javascript.

    Dear all
    Does anybody know how to test ADF Faces. Any tool would be of interest to me although Opensource and Free Software is prefered?
    My task is to write a set of unit tests to test an Oracle ADF and Apache MyFaces application. I have attempted to use both Cactus and HttpUnit. However I am struggling with a simple test case which should simulate a login.
    The problem I have is that ADF Faces produces the following dynamic javascript file (I am guessing it is dynamic because I can not find this in either adf-faces-impl-10_1_3_0_4.jar or adf-faces-api-10_1_3_0_4.jar which are the two jars am implementing in my project.):
    Common10_1_3_0_4.js
    Which when parsed by js.jar (Rhino javascript engine) I get the following error:
    com.meterware.httpunit.ScriptException: Event 'submitForm('maincontent:loginForm',1, {source:'maincontent:submit'});return false;' failed: org.mozilla.javascript.EcmaError: TypeError: Cannot call method "split" of undefined at
    com.meterware.httpunit.javascript.JavaScript$JavaScriptEngine.handleScriptException (JavaScript.java:202)
    (This file Common10_1_3_0_4.js is over 5000 lines long and so I do not want to post it as this posting is already quite long).
    Downloading the file directly after it has been built and modifying it and fixing the error by ensuring the split function is called on a strongly typed String variable, then commenting out from the web.xml below I tried the HttpUnit test again.
         <servlet>
              <servlet-name>resources</servlet-name>
              <servlet-class>oracle.adf.view.faces.webapp.ResourceServlet</servlet-class>
         </servlet>
         <!-- servlet-mapping>
              <servlet-name>resources</servlet-name>
              <url-pattern>/adf/*</url-pattern>
         </servlet-mapping -->
    This time I get no error, but the original login page simply gets served again.
    login.jsp (which is called as login.jsf)
    <%@ page contentType="text/html; charset=UTF-8" %>
    <%@ taglib uri="http://java.sun.com/jstl/core" prefix="c"%>
    <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
    <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
    <%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles"%>
    <%@ taglib uri="http://xmlns.oracle.com/adf/faces/html" prefix="afh"%>
    <%@ taglib uri="http://xmlns.oracle.com/adf/faces" prefix="af"%>
    <!-- Content -->
    <af:objectSeparator />
    <af:panelBox text="#{msg['login.info.loginHeader']}" width="100%" background="transparent">
         <af:form id="loginForm">
                   <af:objectSpacer height="10px" />
                   <af:panelGroup layout="vertical">
                        <af:panelForm labelWidth="5%">
                             <!--User Name-->
                             <af:panelLabelAndMessage for="username">
                                  <af:inputText label="User Name:"
                                       id="username"
                             columns="25"
                             required="yes"
                             secret="false"
                             value="#{userBean.userName}"
                             shortDesc="#{msg['global.user.userName']}" />
                             </af:panelLabelAndMessage>
                             <af:panelLabelAndMessage for="password">
                                  <af:inputText label="Password:"
                                       id="password"
                             columns="25"
                             required="yes"
                             secret="true"
                             value="#{userBean.password}"
                             shortDesc="#{msg['global.user.password']}" />
                             </af:panelLabelAndMessage>
                   <af:objectSpacer height="10px" />
                        <!--Login Button-->
                        <af:commandButton id="submit"
                                  textAndAccessKey="#{msg['global.button.login']}"
                                  action="#{userBean.login}" />
                        </af:panelForm>
                   </af:panelGroup>
         </af:form>
    </af:panelBox>
    TestCase LoginTest.java:
    package com.siemens.pse.wmstesting;
    import java.io.IOException;
    import junit.framework.TestCase;
    import junit.framework.TestSuite;
    import com.meterware.httpunit.GetMethodWebRequest;
    import com.meterware.httpunit.WebConversation;
    import com.meterware.httpunit.WebForm;
    import com.meterware.httpunit.WebLink;
    import com.meterware.httpunit.WebRequest;
    import com.meterware.httpunit.WebResponse;
    public class LoginTest extends TestCase {
         * The URL of the Login page for all login tests
         public static final String URL = new String( "http://localhost/WMS/pages/login.jsf" );
    public static void main( String args[] ) {
    junit.textui.TestRunner.run( suite() );
    public static TestSuite suite() {
    return new TestSuite( LoginTest.class );
    public LoginTest( String s ) {
    super( s );
    public void testGetLogin() throws Exception {
         response = new WebConversation( ).getResponse( request );
    // Test the result
    assertContains( response, "Login Management" );
    public void testLoginSuccess() throws Exception {
         response = new WebConversation( ).getResponse( request );
    WebForm form = response.getFormWithID( "maincontent:loginForm" );
    assertNotNull( "No form found with ID 'maincontent:loginForm'", form );
    form.setParameter( "maincontent:username", "admin" );
    form.setParameter( "maincontent:password", "pass" );
    WebLink submit = response.getLinkWithID("maincontent:submit");
    response = submit.click();
    System.out.println( response.getText());
    // Test the result
    assertContains( response, "Welcome to the Temperature Measurement System" );
    * Convenience function that asserts that a substring can be found in
    * the returned HTTP response body.
    * @param theResponse the response from the server side.
    * @param s the substring to look for
    public void assertContains( WebResponse response, String s ) {
         String target = new String("");
         try {
                   target = response.getText(); }
         catch (IOException e) {
              e.printStackTrace(); }
         if ( target.indexOf( s ) < 0 ) {
              // Error showing which string was NOT found
              fail( "Response did not contain the substring: [" + s + "]" );
    private WebRequest request = new GetMethodWebRequest( LoginTest.URL );
    private WebResponse response;
    }

    Dear All
    Well I found the solution to my testing requirements. HtmlUnit is able to deal with the dynamic Javascript that is generated by the ADF Faces application. The strange part is that HtmlUnit uses the Rhino Javascript engine just as HttpUnit and Cactus, however these two could not deal with the javascript whereas HtmlUnit could.
    I include a snippet of a test case that I wrote that now works.
    public void testLoginSuccess() throws Exception {
    final WebClient webClient = new WebClient( BrowserVersion.INTERNET_EXPLORER_6_0 );
    final URL url = new URL("http://localhost/WMS/pages/login.jsf");
    final HtmlPage page = (HtmlPage)webClient.getPage(url);
    // Get the form that we are dealing with and within that form,
    // find the submit button and the field that we want to change.
    final HtmlForm form = page.getFormByName("maincontent:loginForm");
    final HtmlTextInput usernameField = (HtmlTextInput) form.getInputByName("maincontent:username");
    final HtmlPasswordInput passwordField = (HtmlPasswordInput) form.getInputByName("maincontent assword");
    final ClickableElement button = (ClickableElement) form.getHtmlElementById("maincontent:submit");
    // Change the value of the text field
    usernameField.setValueAttribute("admin");
    passwordField.setValueAttribute("pass");
    // Get the submitted form
    final HtmlPage welcomePage = (HtmlPage) button.click();
    assertEquals( "Temperature Measurement System", welcomePage.getTitleText() );
    }

  • Oracle ADF 11g – Authentication using Custom ADF Login Form Problem

    Hi Guys,
    I am trying to Authenticate my adf application using custom Login Form.
    following this..
    http://www.fireboxtraining.com/blog/2012/02/09/oracle-adf-11g-authentication-using-custom-adf-login-form/#respond
    But my Login Page is not Loading.I think its sending request in chain.my jdev version is 11.1.1.5.Any Idea.
    Thanks,
    Raul

    Hi Frank,
    I deleted bounded code and In another Unit Test I created a simple login.jspx page and applied form based authentication but still facing same problem means something wrong in starting.
    My login.jspx page is
    <?xml version='1.0' encoding='UTF-8'?>
    <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.1"
              xmlns:f="http://java.sun.com/jsf/core"
              xmlns:h="http://java.sun.com/jsf/html"
              xmlns:af="http://xmlns.oracle.com/adf/faces/rich">
      <jsp:directive.page contentType="text/html;charset=UTF-8"/>
      <f:view>
        <af:document id="d1" >
          <af:form id="f1" >
            <af:panelFormLayout id="pfl1">       
              <af:inputText label="USERNAME" id="it1"
                            />       
              <af:inputText label="PASSWORD" id="it2"
                              />
              <af:commandButton text="LOG IN" id="cb1" />
              <f:facet name="footer">       
              </f:facet>                 
            </af:panelFormLayout>
          </af:form>
        </af:document>
      </f:view>
    </jsp:root>
    Don't know wht real problem is

Maybe you are looking for

  • Customizing ESS in Portal

    Goodday Guru's, Need your take on this. We have a new requirement to create a new ESS iview (based on a certain infotype) in the portal which would allow ESS users to add, delete, change and display information. I'm thinking along the line to actuall

  • Stock Special Q valuated , problems

    hi guru´s I´ve several problems. In first place I create a WBS from PS . My material master is a valuated material.  After this, I create a PR, creat a PO with reference to PR and save. Problem: when I did the Goog Receipt the special stock Q is in m

  • Client Copy - Sap Netweaver 7.3

    Hi Folks, I am working on SAP Netweaver release 7.3 and I'd like to know if there is any best practices to perform client copy for this new version. Tks a  lot Mari

  • How to remove tailing zero in U32

    Hello, I am trying to change the format of a U32 number so that all bytes are reversed without tailing zeros, and I am not that familiar with formatting numbers and strings.  Please kindly advise how my VI should be changed to accomplish that.  Thank

  • Mount (one partition) LDM on Arch

    Hi everybody, I'm having a hard time mounting a NTFS drive. On Windows i did merge two partition to be one (spanning i think). It is recognized as one partition though: Disk /dev/sdb: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors Units: sectors