[Webtest] Authorization Issues

sunshuli webtest@lists.canoo.com
Mon, 19 Jan 2004 14:03:56 +0800


This is a multi-part message in MIME format.

------=_NextPart_000_0944_01C3DE95.13EF7760
Content-Type: text/plain;
	charset="gb2312"
Content-Transfer-Encoding: quoted-printable

Ok,=20

In our login.fcc, there is code <FORM NAME=3DLoginForm =
ACTION=3D"/login.fcc" METHOD=3DPOST onSubmit=3D"return =
validateInput();">

the methods validateInput() and getMainMenu() are in the login.js =
(javascript)

function validateInput()
{
   userID =3D document.LoginForm.userid.value;
   pw =3D document.LoginForm.password.value;
   if (userID =3D=3D "" || pw =3D=3D "")
   {
      alert("Please do not leave any field blank.");
      return false;
   }
   else
   {
      target =3D document.LoginForm.target.value;
      if (target =3D=3D "" || target.indexOf('logout') !=3D -1 )=20
         document.LoginForm.target.value =3D getMainMenu();
      document.LoginForm.submit();
   }
   return true;
}

function getMainMenu()
{
   return "/UIMenu/jsp/welcome.jsp";
}

The URL is specified in method getMainMenu().

>From method validateInput(), if the username/passsword is passed the =
authentication (by SiteMinder), method getMainMenu() will be invoked, =
the URL specified in this method will be returned to login.fcc; If the =
username/password is not passed authentication, user will still in the =
login.fcc.

Can such URL be returned using canoo?

thanks a lot.
Sun Shu Li

  ----- Original Message -----=20
  From: Dierk Koenig=20
  To: webtest@lists.canoo.com=20
  Sent: Thursday, January 15, 2004 10:36 PM
  Subject: RE: [Webtest] Authorization Issues


  Ok. Canoo WebTest is totally independent from the technology used on =
the server side.
  As long as plain html is sent to the client, WebTest can handle all of =
it.
  =20
  cheers
  Mittie
    -----Original Message-----
    From: webtest-admin@lists.canoo.com =
[mailto:webtest-admin@lists.canoo.com]On Behalf Of sunshuli
    Sent: Donnerstag, 15. Januar 2004 3:19
    To: webtest@lists.canoo.com
    Subject: Re: [Webtest] Authorization Issues


    Thanks for the response Mittie.

    Yes, we are using javascript in the server-side.

    Canoo canoo support javascripts?

    Thanks a lot.
    Sun Shu Li
      ----- Original Message -----=20
      From: Dierk Koenig=20
      To: webtest@lists.canoo.com=20
      Sent: Wednesday, January 14, 2004 4:43 PM
      Subject: RE: [Webtest] Authorization Issues


      tricky with the javascript. Are you talking about server-side =
javascript?
      =20
      You may need to directly invoke the urls when using Canoo WebTest.
      =20
      cheers
      Mittie
      =20
        -----Original Message-----
        From: webtest-admin@lists.canoo.com =
[mailto:webtest-admin@lists.canoo.com]On Behalf Of sunshuli
        Sent: Mittwoch, 14. Januar 2004 1:58
        To: webtest@lists.canoo.com
        Subject: [Webtest] Authorization Issues


        Hi,
        =20
        We are trying to test our Portnet Application System with canoo.
        =20
        Currently, the problem we encountered is that we cannot login =
successfully with the username/password passed in the login.fcc in the =
test scripts created with canoo. The response page is always the login =
page.
        =20
        The mechanism of our Portnet System login is described as the =
followings:
        =20
        1. The login page is named "login.fcc", it is tally with =
SiteMinder, for that the username and password passed in the login.fcc =
will be authenticated by SiteMinder. In login.fcc, java script is =
invoked to return the authentication result by SiteMinder.
        1) If the authentication is passed, the method of java script =
will return the final definited URL that we will use to login.fcc.
        2) If the authentication is failed, the method of java scrip =
will return false, we will stay at the login page.
        =20
        2. The login pages (login.fcc, java script....) are deployed in =
the web server (iPlanet Webserver), the applications including the final =
definited URL above mentioned are deployed in the application server =
(iPlanet iAS 6.0).
        =20
        We are not sure:
        =20
        1. Can canoo get the authentication result returned by =
SiteMinder?
        2. Can canoo lookup the URL above mentioned in the application =
server (separated with the web server)?
        =20
        Thanks and Regards.
        Sun Shu Li
        E-mail : sunshuli@bhr.com.cn

------=_NextPart_000_0944_01C3DE95.13EF7760
Content-Type: text/html;
	charset="gb2312"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content=3D"text/html; charset=3Dgb2312" http-equiv=3DContent-Type>
<META content=3D"MSHTML 5.00.3502.5390" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT face=3DArial size=3D2>Ok, </FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>In our login.fcc, there is code =
&lt;FORM=20
NAME=3DLoginForm ACTION=3D"/login.fcc" METHOD=3DPOST onSubmit=3D"return=20
validateInput();"&gt;<BR></FONT></DIV>
<DIV><FONT face=3DArial size=3D2>the methods validateInput() and =
getMainMenu() are=20
in the login.js (javascript)</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>function =
validateInput()<BR>{<BR>&nbsp;&nbsp;=20
userID =3D document.LoginForm.userid.value;<BR>&nbsp;&nbsp; pw =3D=20
document.LoginForm.password.value;<BR>&nbsp;&nbsp; if (userID =3D=3D "" =
|| pw =3D=3D=20
"")<BR>&nbsp;&nbsp; {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; alert("Please do =
not=20
leave any field blank.");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return=20
false;<BR>&nbsp;&nbsp; }<BR>&nbsp;&nbsp; else<BR>&nbsp;&nbsp;=20
{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; target =3D=20
document.LoginForm.target.value;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if =
(target =3D=3D=20
"" || target.indexOf('logout') !=3D -1 )=20
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
document.LoginForm.target.value =3D=20
getMainMenu();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
document.LoginForm.submit();<BR>&nbsp;&nbsp; }<BR>&nbsp;&nbsp; return=20
true;<BR>}</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>function =
getMainMenu()<BR>{<BR>&nbsp;&nbsp; return=20
"/UIMenu/jsp/welcome.jsp";<BR>}<BR></FONT></DIV>
<DIV><FONT face=3DArial size=3D2>The URL is specified in method=20
getMainMenu().</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>&nbsp;</DIV></FONT>
<DIV><FONT face=3DArial size=3D2>From method validateInput(), if the=20
username/passsword is passed the authentication (by SiteMinder), method=20
getMainMenu() will be invoked, the URL&nbsp;specified in this method =
will be=20
returned to login.fcc; If the username/password is not passed =
authentication,=20
user will still in the login.fcc.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>Can such URL be returned using =
canoo?</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>thanks a lot.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>Sun Shu Li<BR></DIV></FONT>
<BLOCKQUOTE dir=3Dltr=20
style=3D"BORDER-LEFT: #000000 2px solid; MARGIN-LEFT: 5px; MARGIN-RIGHT: =
0px; PADDING-LEFT: 5px; PADDING-RIGHT: 0px">
  <DIV style=3D"FONT: 10pt arial">----- Original Message ----- </DIV>
  <DIV=20
  style=3D"BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: =
black"><B>From:</B>=20
  <A href=3D"mailto:dierk.koenig@canoo.com" =
title=3Ddierk.koenig@canoo.com>Dierk=20
  Koenig</A> </DIV>
  <DIV style=3D"FONT: 10pt arial"><B>To:</B> <A=20
  href=3D"mailto:webtest@lists.canoo.com"=20
  title=3Dwebtest@lists.canoo.com>webtest@lists.canoo.com</A> </DIV>
  <DIV style=3D"FONT: 10pt arial"><B>Sent:</B> Thursday, January 15, =
2004 10:36=20
  PM</DIV>
  <DIV style=3D"FONT: 10pt arial"><B>Subject:</B> RE: [Webtest] =
Authorization=20
  Issues</DIV>
  <DIV><BR></DIV>
  <DIV><FONT color=3D#0000ff face=3DArial size=3D2><SPAN =
class=3D091513414-15012004>Ok.=20
  Canoo WebTest is totally independent from the technology used on the =
server=20
  side.</SPAN></FONT></DIV>
  <DIV><FONT color=3D#0000ff face=3DArial size=3D2><SPAN =
class=3D091513414-15012004>As=20
  long as plain html is sent to the client, WebTest can handle all of=20
  it.</SPAN></FONT></DIV>
  <DIV><FONT color=3D#0000ff face=3DArial size=3D2><SPAN=20
  class=3D091513414-15012004></SPAN></FONT>&nbsp;</DIV>
  <DIV><FONT color=3D#0000ff face=3DArial size=3D2><SPAN=20
  class=3D091513414-15012004>cheers</SPAN></FONT></DIV>
  <DIV><FONT color=3D#0000ff face=3DArial size=3D2><SPAN=20
  class=3D091513414-15012004>Mittie</SPAN></FONT></DIV>
  <BLOCKQUOTE dir=3Dltr=20
  style=3D"BORDER-LEFT: #0000ff 2px solid; MARGIN-LEFT: 5px; =
MARGIN-RIGHT: 0px; PADDING-LEFT: 5px">
    <DIV align=3Dleft class=3DOutlookMessageHeader dir=3Dltr><FONT =
face=3DTahoma=20
    size=3D2>-----Original Message-----<BR><B>From:</B> <A=20
    =
href=3D"mailto:webtest-admin@lists.canoo.com">webtest-admin@lists.canoo.c=
om</A>=20
    [<A=20
    =
href=3D"mailto:webtest-admin@lists.canoo.com">mailto:webtest-admin@lists.=
canoo.com</A>]<B>On=20
    Behalf Of </B>sunshuli<BR><B>Sent:</B> Donnerstag, 15. Januar 2004=20
    3:19<BR><B>To:</B> webtest@lists.canoo.com<BR><B>Subject:</B> Re: =
[Webtest]=20
    Authorization Issues<BR><BR></FONT></DIV>
    <DIV><FONT face=3DArial size=3D2>Thanks for the response =
Mittie.</FONT></DIV>
    <DIV>&nbsp;</DIV>
    <DIV><FONT face=3DArial size=3D2>Yes, we are using javascript in the =

    server-side.</FONT></DIV>
    <DIV>&nbsp;</DIV>
    <DIV><FONT face=3DArial size=3D2>Canoo canoo&nbsp;support=20
    javascripts?</FONT></DIV>
    <DIV>&nbsp;</DIV>
    <DIV><FONT face=3DArial size=3D2>Thanks a lot.</FONT></DIV>
    <DIV><FONT face=3DArial size=3D2>Sun Shu Li</FONT></DIV>
    <BLOCKQUOTE dir=3Dltr=20
    style=3D"BORDER-LEFT: #000000 2px solid; MARGIN-LEFT: 5px; =
MARGIN-RIGHT: 0px; PADDING-LEFT: 5px; PADDING-RIGHT: 0px">
      <DIV style=3D"FONT: 10pt arial">----- Original Message ----- =
</DIV>
      <DIV=20
      style=3D"BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: =
black"><B>From:</B>=20
      <A href=3D"mailto:dierk.koenig@canoo.com" =
title=3Ddierk.koenig@canoo.com>Dierk=20
      Koenig</A> </DIV>
      <DIV style=3D"FONT: 10pt arial"><B>To:</B> <A=20
      href=3D"mailto:webtest@lists.canoo.com"=20
      title=3Dwebtest@lists.canoo.com>webtest@lists.canoo.com</A> </DIV>
      <DIV style=3D"FONT: 10pt arial"><B>Sent:</B> Wednesday, January =
14, 2004=20
      4:43 PM</DIV>
      <DIV style=3D"FONT: 10pt arial"><B>Subject:</B> RE: [Webtest] =
Authorization=20
      Issues</DIV>
      <DIV><BR></DIV>
      <DIV><SPAN class=3D010463808-14012004><FONT color=3D#0000ff =
face=3DArial=20
      size=3D2>tricky with the javascript. Are you talking about =
server-side=20
      javascript?</FONT></SPAN></DIV>
      <DIV><SPAN class=3D010463808-14012004><FONT color=3D#0000ff =
face=3DArial=20
      size=3D2></FONT></SPAN>&nbsp;</DIV>
      <DIV><SPAN class=3D010463808-14012004><FONT color=3D#0000ff =
face=3DArial=20
      size=3D2>You may need to directly invoke the urls when using Canoo =

      WebTest.</FONT></SPAN></DIV>
      <DIV><SPAN class=3D010463808-14012004><FONT color=3D#0000ff =
face=3DArial=20
      size=3D2></FONT></SPAN>&nbsp;</DIV>
      <DIV><SPAN class=3D010463808-14012004><FONT color=3D#0000ff =
face=3DArial=20
      size=3D2>cheers</FONT></SPAN></DIV>
      <DIV><SPAN class=3D010463808-14012004><FONT color=3D#0000ff =
face=3DArial=20
      size=3D2>Mittie</FONT></SPAN></DIV>
      <DIV><SPAN class=3D010463808-14012004><FONT color=3D#0000ff =
face=3DArial=20
      size=3D2></FONT></SPAN>&nbsp;</DIV>
      <BLOCKQUOTE dir=3Dltr=20
      style=3D"BORDER-LEFT: #0000ff 2px solid; MARGIN-LEFT: 5px; =
MARGIN-RIGHT: 0px; PADDING-LEFT: 5px">
        <DIV align=3Dleft class=3DOutlookMessageHeader dir=3Dltr><FONT =
face=3DTahoma=20
        size=3D2>-----Original Message-----<BR><B>From:</B> <A=20
        =
href=3D"mailto:webtest-admin@lists.canoo.com">webtest-admin@lists.canoo.c=
om</A>=20
        [<A=20
        =
href=3D"mailto:webtest-admin@lists.canoo.com">mailto:webtest-admin@lists.=
canoo.com</A>]<B>On=20
        Behalf Of </B>sunshuli<BR><B>Sent:</B> Mittwoch, 14. Januar 2004 =

        1:58<BR><B>To:</B> <A=20
        =
href=3D"mailto:webtest@lists.canoo.com">webtest@lists.canoo.com</A><BR><B=
>Subject:</B>=20
        [Webtest] Authorization Issues<BR><BR></FONT></DIV>
        <DIV><FONT face=3DArial size=3D2>
        <DIV><FONT color=3D#000000>
        <DIV><SPAN class=3D190581305-12012004>
        <DIV><SPAN class=3D604480003-25122003><FONT=20
        face=3DArial>Hi,</FONT></SPAN></DIV>
        <DIV><SPAN class=3D604480003-25122003><FONT=20
        face=3DArial></FONT></SPAN></SPAN>&nbsp;</DIV></DIV>
        <DIV><SPAN class=3D190581305-12012004><FONT =
face=3DArial>We&nbsp;are trying=20
        to test our Portnet Application System with =
canoo.</FONT></SPAN></DIV>
        <DIV><SPAN class=3D190581305-12012004><FONT=20
        face=3DArial></FONT></SPAN>&nbsp;</DIV>
        <DIV><SPAN class=3D190581305-12012004><SPAN =
class=3D190581305-12012004><SPAN=20
        style=3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; =
mso-fareast-font-family: =CB=CE=CC=E5; mso-ansi-language: EN-US; =
mso-fareast-language: EN-US; mso-bidi-language: AR-SA; =
mso-bidi-font-family: 'Times New Roman'"><SPAN=20
        style=3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; =
mso-fareast-font-family: =CB=CE=CC=E5; mso-ansi-language: EN-US; =
mso-fareast-language: EN-US; mso-bidi-language: AR-SA; =
mso-bidi-font-family: 'Times New Roman'">Currently,=20
        the problem we encountered&nbsp;is that we cannot login =
successfully=20
        with the username/password passed in the login.fcc in the test =
scripts=20
        created with canoo. The response page is always the login=20
        page.</SPAN></SPAN></SPAN></SPAN></DIV>
        <DIV><SPAN class=3D190581305-12012004><FONT=20
        face=3DArial></FONT></SPAN>&nbsp;</DIV>
        <DIV><SPAN class=3D190581305-12012004><FONT face=3DArial>The =
mechanism of=20
        our Portnet System login is described as the=20
        followings:</FONT></SPAN></DIV>
        <DIV><SPAN class=3D190581305-12012004><FONT=20
        face=3DArial></FONT></SPAN>&nbsp;</DIV>
        <DIV><SPAN class=3D190581305-12012004><FONT face=3DArial>1. The =
login page=20
        is named "login.fcc", it is tally with SiteMinder, for that the =
username=20
        and password passed in the login.fcc will be authenticated by=20
        SiteMinder. In login.fcc, java script is invoked to return the=20
        authentication result by SiteMinder.</FONT></SPAN></DIV>
        <DIV><SPAN class=3D190581305-12012004><FONT face=3DArial>1) =
If&nbsp;the=20
        authentication is passed, the method of java script will return =
the=20
        final definited&nbsp;URL&nbsp;that we will use to=20
        login.fcc.</FONT></SPAN></DIV>
        <DIV><SPAN class=3D190581305-12012004><FONT face=3DArial>2) If =
the=20
        authentication is failed, the method of java scrip will return =
false, we=20
        will stay at the login page.</FONT></SPAN></DIV>
        <DIV><SPAN class=3D190581305-12012004><FONT=20
        face=3DArial></FONT></SPAN>&nbsp;</DIV>
        <DIV><SPAN class=3D190581305-12012004><FONT face=3DArial>2. The =
login pages=20
        (login.fcc, java script....) are deployed in the web server =
(<SPAN=20
        style=3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; =
mso-fareast-font-family: =CB=CE=CC=E5; mso-ansi-language: EN-US; =
mso-fareast-language: EN-US; mso-bidi-language: AR-SA; =
mso-bidi-font-family: 'Times New Roman'">iPlanet=20
        Webserver), the applications including the&nbsp;final definited =
URL=20
        above mentioned&nbsp;are deployed in the application server =
(<SPAN=20
        style=3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; =
mso-fareast-font-family: =CB=CE=CC=E5; mso-ansi-language: EN-US; =
mso-fareast-language: EN-US; mso-bidi-language: AR-SA; =
mso-bidi-font-family: 'Times New Roman'">iPlanet=20
        iAS 6.0).</SPAN></SPAN></FONT></SPAN></DIV>
        <DIV><SPAN class=3D190581305-12012004><SPAN=20
        style=3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; =
mso-fareast-font-family: =CB=CE=CC=E5; mso-ansi-language: EN-US; =
mso-fareast-language: EN-US; mso-bidi-language: AR-SA; =
mso-bidi-font-family: 'Times New Roman'"><SPAN=20
        style=3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; =
mso-fareast-font-family: =CB=CE=CC=E5; mso-ansi-language: EN-US; =
mso-fareast-language: EN-US; mso-bidi-language: AR-SA; =
mso-bidi-font-family: 'Times New Roman'"><FONT=20
        face=3DArial></FONT></SPAN></SPAN></SPAN>&nbsp;</DIV>
        <DIV><SPAN class=3D190581305-12012004><SPAN=20
        style=3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; =
mso-fareast-font-family: =CB=CE=CC=E5; mso-ansi-language: EN-US; =
mso-fareast-language: EN-US; mso-bidi-language: AR-SA; =
mso-bidi-font-family: 'Times New Roman'"><SPAN=20
        style=3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; =
mso-fareast-font-family: =CB=CE=CC=E5; mso-ansi-language: EN-US; =
mso-fareast-language: EN-US; mso-bidi-language: AR-SA; =
mso-bidi-font-family: 'Times New Roman'">We=20
        are not sure:</SPAN></SPAN></SPAN></DIV>
        <DIV><SPAN class=3D190581305-12012004><SPAN=20
        style=3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; =
mso-fareast-font-family: =CB=CE=CC=E5; mso-ansi-language: EN-US; =
mso-fareast-language: EN-US; mso-bidi-language: AR-SA; =
mso-bidi-font-family: 'Times New Roman'"><SPAN=20
        style=3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; =
mso-fareast-font-family: =CB=CE=CC=E5; mso-ansi-language: EN-US; =
mso-fareast-language: EN-US; mso-bidi-language: AR-SA; =
mso-bidi-font-family: 'Times New Roman'"><FONT=20
        face=3DArial></FONT></SPAN></SPAN></SPAN>&nbsp;</DIV>
        <DIV><SPAN class=3D190581305-12012004><SPAN=20
        style=3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; =
mso-fareast-font-family: =CB=CE=CC=E5; mso-ansi-language: EN-US; =
mso-fareast-language: EN-US; mso-bidi-language: AR-SA; =
mso-bidi-font-family: 'Times New Roman'"><SPAN=20
        style=3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; =
mso-fareast-font-family: =CB=CE=CC=E5; mso-ansi-language: EN-US; =
mso-fareast-language: EN-US; mso-bidi-language: AR-SA; =
mso-bidi-font-family: 'Times New Roman'">1.&nbsp;Can=20
        canoo&nbsp;get the authentication result returned by=20
        SiteMinder?</SPAN></SPAN></SPAN></DIV>
        <DIV><SPAN class=3D190581305-12012004><SPAN=20
        style=3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; =
mso-fareast-font-family: =CB=CE=CC=E5; mso-ansi-language: EN-US; =
mso-fareast-language: EN-US; mso-bidi-language: AR-SA; =
mso-bidi-font-family: 'Times New Roman'"><SPAN=20
        style=3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; =
mso-fareast-font-family: =CB=CE=CC=E5; mso-ansi-language: EN-US; =
mso-fareast-language: EN-US; mso-bidi-language: AR-SA; =
mso-bidi-font-family: 'Times New Roman'">2.=20
        Can canoo lookup the URL above mentioned in the application =
server=20
        (separated with the web server)?</SPAN></SPAN></SPAN></DIV>
        <DIV><SPAN class=3D190581305-12012004><SPAN=20
        style=3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; =
mso-fareast-font-family: =CB=CE=CC=E5; mso-ansi-language: EN-US; =
mso-fareast-language: EN-US; mso-bidi-language: AR-SA; =
mso-bidi-font-family: 'Times New Roman'"><SPAN=20
        style=3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; =
mso-fareast-font-family: =CB=CE=CC=E5; mso-ansi-language: EN-US; =
mso-fareast-language: EN-US; mso-bidi-language: AR-SA; =
mso-bidi-font-family: 'Times New Roman'"><FONT=20
        face=3DArial></FONT></SPAN></SPAN></SPAN>&nbsp;</DIV>
        <DIV><SPAN class=3D190581305-12012004><SPAN=20
        style=3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; =
mso-fareast-font-family: =CB=CE=CC=E5; mso-ansi-language: EN-US; =
mso-fareast-language: EN-US; mso-bidi-language: AR-SA; =
mso-bidi-font-family: 'Times New Roman'"><SPAN=20
        style=3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; =
mso-fareast-font-family: =CB=CE=CC=E5; mso-ansi-language: EN-US; =
mso-fareast-language: EN-US; mso-bidi-language: AR-SA; =
mso-bidi-font-family: 'Times New Roman'">Thanks=20
        and Regards.</SPAN></SPAN></SPAN></DIV>
        <DIV><SPAN class=3D190581305-12012004><SPAN=20
        style=3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; =
mso-fareast-font-family: =CB=CE=CC=E5; mso-ansi-language: EN-US; =
mso-fareast-language: EN-US; mso-bidi-language: AR-SA; =
mso-bidi-font-family: 'Times New Roman'"><SPAN=20
        style=3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; =
mso-fareast-font-family: =CB=CE=CC=E5; mso-ansi-language: EN-US; =
mso-fareast-language: EN-US; mso-bidi-language: AR-SA; =
mso-bidi-font-family: 'Times New Roman'">Sun=20
        Shu Li</SPAN></SPAN></SPAN></DIV>
        <DIV><SPAN class=3D190581305-12012004><SPAN=20
        style=3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; =
mso-fareast-font-family: =CB=CE=CC=E5; mso-ansi-language: EN-US; =
mso-fareast-language: EN-US; mso-bidi-language: AR-SA; =
mso-bidi-font-family: 'Times New Roman'"><SPAN=20
        style=3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; =
mso-fareast-font-family: =CB=CE=CC=E5; mso-ansi-language: EN-US; =
mso-fareast-language: EN-US; mso-bidi-language: AR-SA; =
mso-bidi-font-family: 'Times New Roman'">E-mail=20
        : <A=20
        =
href=3D"mailto:sunshuli@bhr.com.cn">sunshuli@bhr.com.cn</A></SPAN></SPAN>=
</SPAN></DIV></FONT></DIV></FONT></DIV></BLOCKQUOTE></BLOCKQUOTE></BLOCKQ=
UOTE></BLOCKQUOTE></BODY></HTML>

------=_NextPart_000_0944_01C3DE95.13EF7760--