OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

wsrp-interop message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: [wsrp-interop] Producer is up again



Our Consumer sends also replace tokens in templates.
However we try to manage both {wsrp-*} and "".
This is especially of interest for the mode and window state in URLs.

Mit freundlichen Gruessen / best regards,

        Richard Jacob
______________________________________________________
IBM Lab Boeblingen, Germany
Dept.8288, WebSphere Portal Server Development
Phone: ++49 7031 16-3469  -  Fax: ++49 7031 16-4888
Email: mailto:richard.jacob@de.ibm.com


|---------+----------------------------->
|         |           Michael Freedman  |
|         |           <Michael.Freedman@|
|         |           oracle.com>       |
|         |                             |
|         |           11/26/2003 06:58  |
|         |           PM                |
|---------+----------------------------->
  >--------------------------------------------------------------------------------------------------------------------------------------------------|
  |                                                                                                                                                  |
  |       To:       Subbu Allamaraju <subbu@bea.com>                                                                                                 |
  |       cc:       wsrp-interop@lists.oasis-open.org                                                                                                |
  |       Subject:  Re: [wsrp-interop] Producer is up again                                                                                          |
  >--------------------------------------------------------------------------------------------------------------------------------------------------|




Yes, the full WSTP committee still has to approve the interop decision but
the proposal we have put before them is:
New text: These tokens are enclosed in curly braces (i.e. "{" and "}") and
contain the name of the portlet URL parameter which the Producer MUST
replace (using "" for those parameters where the Producer has no value).

However, for the interop demo we just need to find the easiest intersection
between what consumers and prodcuers support.  Anywone other then BEA using
URL templates? If so what do you do?  For each of the consumers we intend
to use in the demo what do they need/expect to work properly?
     -Mike-

Subbu Allamaraju wrote:

      David,

            The BEA Producer has "usesMethodGet" set on all its portlet
            descriptions at the moment (even when our portal sends
            methodGetSupported=false), hence our portal filters them all
            out when we register them. In the interests of the interop
            demo, could you provide some portlets with usesMethodGet=false?

      This is a bit tricky, since the producer does not really care about
      usesMethodGet. We don't require portlet JSP developers to specify
      this at all.

      I'll make it return false temporarily.

            Also, what was the decision made on template parameters with no
            value? Currently these are being left in place by the BEA
            producer meaning that all URLS come back with "
            #{wsrp-fragmentid}" on the end of them.

      This issue is still open for the TC to consider.

      Regards,

      Subbu

            Subbu Allamaraju wrote:

                  David,

                  During the WSDL call today, Andre and myself discussed
                  this issue, and he suggested that the producer could
                  still include the complete URL in the action so that the
                  consumer can rewrite it if it wants to. That seems
                  reasonable for the producer, and it won't break consumer
                  that don't rewrite the markup.

                  I'll update the producer and let you know.

                  Regards,

                  Subbu

                  Subbu Allamaraju said the following on 11/26/2003 07:55
                  AM:

                        David,

                        I see the following templates in the monitor:

                        <ns0:templates>
                        <ns0:defaultTemplate xsi:nil="1"/>
                        <ns0:blockingActionTemplate>wsrp_rewrite?wsrp-urlType=blockingAction&amp;amp;wsrp-navigationalState

                        {wsrp-navigationalState}
                        &amp;amp;wsrp-interactionState
                        ={wsrp-interactionState}&amp;amp;wsrp-mode
                        ={wsrp-mode}&amp;amp;wsrp-windowState
                        ={wsrp-windowState}&amp;amp;wsrp-fragmentID
                        ={wsrp-fragmentID}/wsrp_rewrite</ns0:blockingActionTemplate>


                        <ns0:renderTemplate>wsrp_rewrite?wsrp-urlType=render&amp;amp;wsrp-navigationalState

                        {wsrp-navigationalState}&amp;amp;wsrp-mode
                        ={wsrp-mode}&amp;amp;wsrp-windowState
                        ={wsrp-windowState}&amp;amp;wsrp-fragmentID
                        ={wsrp-fragmentID}/wsrp_rewrite</ns0:renderTemplate>


                        <ns0:resourceTemplate>wsrp_rewrite?wsrp-urlType=resource&amp;amp;wsrp-url

                        {wsrp-url}&amp;amp;wsrp-requiresRewrite
                        ={wsrp-requiresRewrite}/wsrp_rewrite</ns0:resourceTemplate>

                                      <ns0:secureDefaultTemplate xsi:nil
                        ="1"/> <ns0:secureBlockingActionTemplate>
                        <![CDATA[wsrp_rewrite?wsrp-urlType=blockingAction&amp;wsrp-secureURL=true&amp;wsrp-navigationalState

                        {wsrp-navigationalState}&amp;wsrp-interactionState
                        ={wsrp-interactionState}&amp;wsrp-mode={wsrp-mode}
                        &amp;wsrp-windowState={wsrp-windowState}
                        &amp;wsrp-fragmentID
                        ={wsrp-fragmentID}/wsrp_rewrite]]></ns0:secureBlockingActionTemplate>


                        <ns0:secureRenderTemplate>wsrp_rewrite?wsrp-urlType=render&amp;amp;wsrp-secureURL=true&amp;amp;wsrp-navigationalState

                        {wsrp-navigationalState}&amp;amp;wsrp-mode
                        ={wsrp-mode}&amp;amp;wsrp-windowState
                        ={wsrp-windowState}&amp;amp;wsrp-fragmentID
                        ={wsrp-fragmentID}/wsrp_rewrite</ns0:secureRenderTemplate>


                        <ns0:secureResourceTemplate>wsrp_rewrite?wsrp-urlType=resource&amp;amp;wsrp-secureURL=true&amp;amp;wsrp-url

                        {wsrp-url}&amp;amp;wsrp-requiresRewrite
                        ={wsrp-requiresRewrite}/wsrp_rewrite</ns0:secureResourceTemplate>

                                   </ns0:templates>

                        Firstly, I did not expect a consumer to send
                        rewrite tokens in templates. These templates may be
                        valid from the spec point of view, but can a
                        consumer rewrite such URLs? Could you elaborate on
                        how you plan to rewrite these URLs in your
                        consumer?

                        Secondly, to make sure that browser does not drop
                        the query string in the action, our producer
                        creates hidden fields for each parameter found in
                        the query string. This explains the the action URL
                        "wsrp_rewrite" and the hidden params.

                        I need to look into those &amps in the hidden
                        fields.

                        Regards,

                        Subbu

                        David Ward said the following on 11/26/2003 07:36
                        AM:

                              Thanks.

                              Now I'm seeing the following in the methodGet
                              portlet (not that our Portal actually
                              supports method get, but I thought these
                              results from our test client were
                              interesting).

                              <form name="firstStepForm" method="get"
                              action="wsrp_rewrite">
                              <input type="hidden" name="wsrp-urlType"
                              value="blockingAction"/>
                              <input type="hidden" name="
                              *amp;wsrp-interactionState*" value
                              ="firststep"/>
                              <input type="hidden" name="
                              *amp;wsrp-fragmentID*" value="
                              *{wsrp-fragmentID}/wsrp_rewrite*"/>
                                  <table>
                                      <tr valign="top">
                                          <td>First Field:</td>
                                          <td>
                                          <input type="text" name
                              ="0{actionForm.field1}" value=""/>
                                          </td>
                                      </tr>
                                      <tr valign="top">
                                          <td>Second Field:</td>
                                          <td>
                                          <input type="text" name
                              ="0{actionForm.field2}" value=""/>
                                          </td>
                                      </tr>
                                  </table>
                                  <br/>&nbsp;
                                  <input type="submit" value="firststep"/>
                              </form>

                              It seems that you are trying to 'parse' the
                              templates we are sending you into, expecting
                              them to be in query string format, and you
                              are not recognizing "&amp;" as a separator. I
                              thought it was only valid to 'instantiate'
                              templates by expanding out the variables
                              enclosed in {}. As you can see, the templates
                              we pass expand out into rewritable URLs, so
                              end with "/wsrp_rewrite".

                              I would have expected this as the result from
                              the method get portlet:, given the template
                              we sent you

                              <form name="firstStepForm" method="get"
                              *action
                              ="wsrp_rewrite?wsrp-urlType=blockingAction&amp;wsrp-interactionState=firststep&**amp;wsrp-fragmentID

                              **/wsrp_rewrite">*
                                  <table>
                                      <tr valign="top">
                                          <td>First Field:</td>
                                          <td>
                                          <input type="text" name
                              ="0{actionForm.field1}" value=""/>
                                          </td>
                                      </tr>
                                      <tr valign="top">
                                          <td>Second Field:</td>
                                          <td>
                                          <input type="text" name
                              ="0{actionForm.field2}" value=""/>
                                          </td>
                                      </tr>
                                  </table>
                                  <br/>&nbsp;
                                  <input type="submit" value="firststep"/>
                              </form>

                              Regards

                              David

                              Subbu Allamaraju wrote:

                                    Hi David,

                                    Uploaded the fix just now. I was able
                                    to register our consumer with your
                                    producer last night. I'm going to try
                                    setup a page now.

                                    Regards,

                                    Subbu

                                    David Ward said the following on
                                    11/26/2003 05:10 AM:

                                          Hi Subbu

                                          It seems you have added a
                                          registration port now and your
                                          portlets won't render without a
                                          registration handle. However,
                                          when I try to register, I see the
                                          following request and response.
                                          It seems your producer requires
                                          some sort of authentication. Note
                                          also that the Content-Type
                                          response header is still wrong!

                                          POST /producer/producer HTTP/1.1
                                          Host: ukp16267.uk.oracle.com:5555

                                          Connection: close, TE
                                          TE: trailers, deflate, gzip,
                                          compress
                                          User-Agent: RPT-HTTPClient/0.3-3
                                          SOAPAction:
                                          "urn:oasis:names:tc:wsrp:v1:register"


                                          Accept-Encoding: gzip, x-gzip,
                                          compress, x-compress
                                          Content-type: text/xml; charset
                                          ="utf-8"
                                          Content-length: 1010

                                          <?xml version="1.0" encoding
                                          ="UTF-8"?>
                                             <env:Envelope xmlns:env="
                                          http://schemas.xmlsoap.org/soap/envelope/
                                          " xmlns:xsd="
                                          http://www.w3.org/2001/XMLSchema";
                                          xmlns:xsi="
                                          http://www.w3.org/2001/XMLSchema-instance
                                          " xmlns:ns0
                                          ="urn:oasis:names:tc:wsrp:v1:types">


                                                <env:Body>
                                                   <ns0:register>

                                          <ns0:consumerName>UKP16267</ns0:consumerName>



                                          <ns0:consumerAgent>OraclePortal.9.5</ns0:consumerAgent>



                                          <ns0:methodGetSupported>false</ns0:methodGetSupported>



                                          <ns0:consumerModes>wsrp:view</ns0:consumerModes>



                                          <ns0:consumerModes>wsrp:edit</ns0:consumerModes>



                                          <ns0:consumerModes>wsrp:help</ns0:consumerModes>



                                          <ns0:consumerModes>wsrp:preview</ns0:consumerModes>



                                          <ns0:consumerModes>urn:javax:portlet:mode:custom:edit_defaults</ns0:consumerModes>



                                          <ns0:consumerWindowStates>wsrp:normal</ns0:consumerWindowStates>



                                          <ns0:consumerWindowStates>wsrp:minimized</ns0:consumerWindowStates>



                                          <ns0:consumerWindowStates>wsrp:maximized</ns0:consumerWindowStates>



                                          <ns0:consumerWindowStates>wsrp:solo</ns0:consumerWindowStates>


                                                   </ns0:register>
                                                </env:Body>
                                             </env:Envelope>

                                          HTTP/1.1 200 OK
                                          Date: Wed, 26 Nov 2003 12:04:45
                                          GMT
                                          Content-Length: 2854
                                          Content-Type: text/xml; UTF-8
                                          Connection: close
                                          Server: WebLogic Server 8.1 SP2
                                          Mon Nov 17 22:57:23 PST 2003
                                          311144 WebLogic Server 8.1 SP2
                                          Mon Nov 17 22:57:23 PST 2003
                                          311144 WebLogic Server 8.1 SP2
                                          Mon Nov 17 22:57:23 PST 2003
                                          311144
                                          Via: 1.1 inet-nc01 (NetCache
                                          NetApp/5.3.1R3)

                                          <?xml version="1.0" encoding
                                          ="UTF-8"?>
                                             <soapenv:Envelope
                                          xmlns:soapenv="
                                          http://schemas.xmlsoap.org/soap/envelope/
                                          ">
                                                <soapenv:Body>
                                                   <soapenv:Fault xmlns:urn
                                          ="urn:oasis:names:tc:wsrp:v1:types">



                                          <faultcode>urn:OperationFailed</faultcode>



                                          <faultstring>[EJB:010160]Security
                                          Violation: User: '&lt;anonymous>'
                                          has insufficient permission to
                                          access EJB: type=&lt;ejb>,
                                          application=producerApp,
                                          module=netuix.jar,
                                          ejb=ConsumerRegistrationService,
                                          method=register,
                                          methodInterface=Local, signature
                                          ={java.lang.String,java.lang.String,java.lang.String,java.util.Map}.</faultstring>


                                                      <detail>

                                          <detail>com.bea.wsrp.faults.OperationFailedException:

                                          [EJB:010160]Security Violation:
                                          User: '&lt;anonymous>' has
                                          insufficient permission to access
                                          EJB: type=&lt;ejb>,
                                          application=producerApp,
                                          module=netuix.jar,
                                          ejb=ConsumerRegistrationService,
                                          method=register,
                                          methodInterface=Local, signature
                                          ={java.lang.String,java.lang.String,java.lang.String,java.util.Map}.

                                             at
                                          com.bea.wsrp.producer.adapter.registration.PortalConsumerRegistrationServiceAdapter.register(PortalConsumerRegistrationServiceAdapter.java:59)

                                             at
                                          com.bea.wsrp.producer.handlers.registration.RegistrationServiceHandler.doRegister(RegistrationServiceHandler.java:185)

                                             at
                                          com.bea.wsrp.producer.handlers.registration.RegistrationServiceHandler.doService(RegistrationServiceHandler.java:119)

                                             at
                                          com.bea.wsrp.producer.WsrpServer.invokeHandler(WsrpServer.java:335)

                                             at
                                          com.bea.wsrp.producer.WsrpServer.doService(WsrpServer.java:297)

                                             at
                                          com.bea.wsrp.producer.WsrpServer.processServiceRequest(WsrpServer.java:210)

                                             at
                                          com.bea.wsrp.producer.WsrpServer.service(WsrpServer.java:169)

                                             at
                                          javax.servlet.http.HttpServlet.service(HttpServlet.java:853)

                                             at
                                          weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:971)

                                             at
                                          weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:402)

                                             at
                                          weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:28)

                                             at
                                          weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)

                                             at
                                          com.bea.wsrp.producer.adapter.pageflow.WsrpPageflowFilter.doFilter(WsrpPageflowFilter.java:73)

                                             at
                                          weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)

                                             at
                                          weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6356)

                                             at
                                          weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)

                                             at
                                          weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)

                                             at
                                          weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3635)

                                             at
                                          weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2585)

                                             at
                                          weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)

                                             at
                                          weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)</detail>


                                                      </detail>
                                                   </soapenv:Fault>
                                                </soapenv:Body>
                                             </soapenv:Envelope>

                                          Regards

                                          Dave

                                          Subbu Allamaraju wrote:

                                                The producer is up now.

                                                The producer WSDL is at:

                                                http://wsrp.avitek.com:7001/producer/producer?WSDL


                                                The consumer is at:

                                                http://wsrp.avitel.com:7001/consumer/portal.portal
                                                 (please note the change in
                                                port number).

                                                There are some known issues
                                                with the portlets that we
                                                obtained from a partner,
                                                and those will be fixed by
                                                tomorrow.

                                                Regards,

                                                Subbu


                                                To unsubscribe from this
                                                mailing list (and be
                                                removed from the roster of
                                                the OASIS TC), go to
                                                http://www.oasis-open.org/apps/org/workgroup/wsrp-interop/members/leave_workgroup.php
                                                .


                                          --
                                          ------------------------------------------------------------------------



                                          *David Ward*
                                          Principal Software Engineer
                                          Portlet Technologies
                                          Oracle Portal
                                              Oracle European Development
                                          Centre
                                          520 Oracle Parkway
                                          Thames Valley Park
                                          Reading
                                          Berkshire RG6 1RA
                                          UK    *Email:*
                                          david.ward@oracle.com <
                                          mailto:david.ward@oracle.com>
                                          *Tel:*     +44 118 924 5079
                                          *Fax:*     +44 118 924 5005





                                    To unsubscribe from this mailing list
                                    (and be removed from the roster of the
                                    OASIS TC), go to
                                    http://www.oasis-open.org/apps/org/workgroup/wsrp-interop/members/leave_workgroup.php
                                    .


                              --
                              ------------------------------------------------------------------------



                              *David Ward*
                              Principal Software Engineer
                              Portlet Technologies
                              Oracle Portal
                                  Oracle European Development Centre
                              520 Oracle Parkway
                              Thames Valley Park
                              Reading
                              Berkshire RG6 1RA
                              UK    *Email:*     david.ward@oracle.com <
                              mailto:david.ward@oracle.com>
                              *Tel:*     +44 118 924 5079
                              *Fax:*     +44 118 924 5005





                        To unsubscribe from this mailing list (and be
                        removed from the roster of the OASIS TC), go to
                        http://www.oasis-open.org/apps/org/workgroup/wsrp-interop/members/leave_workgroup.php
                        .




                  To unsubscribe from this mailing list (and be removed
                  from the roster of the OASIS TC), go to
                  http://www.oasis-open.org/apps/org/workgroup/wsrp-interop/members/leave_workgroup.php
                  .


            --
            ------------------------------------------------------------------------



            *David Ward*
            Principal Software Engineer
            Portlet Technologies
            Oracle Portal
                Oracle European Development Centre
            520 Oracle Parkway
            Thames Valley Park
            Reading
            Berkshire RG6 1RA
            UK
            *Email:*     david.ward@oracle.com <
            mailto:david.ward@oracle.com>
            *Tel:*     +44 118 924 5079
            *Fax:*     +44 118 924 5005





      To unsubscribe from this mailing list (and be removed from the roster
      of the OASIS TC), go to
      http://www.oasis-open.org/apps/org/workgroup/wsrp-interop/members/leave_workgroup.php
      .






[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]