Thanks for the link Mert.  If you look at the page, it seems be missing 50% of the puzzle; it shows how to bind a variable in the target page, but it does not state how to pass that variable from the originating page--the resolver function is resolving the binding of the current (i.e., the new popped up window) page, but I need to use the value from the originating page.  I don't understand how one does so from the originating page when you wish to create a popup.  I would like to control the size of the popup, which appears only to be available if I open the window via _javascript_.  That requirement aside, do you by any chance have a working example of a link opening a new window, first passing a value from one page to the next?  This is not nearly as straightforward as I would expect. 
 
The website [1] below suggests using output link, but I'm not sure what they did to make it work (i.e., they call target="_blank", but I don't see them attempting to first bind a value as would be the case with a commandLink). 
 
[1] http://www.jroller.com/page/jsight?entry=still_not_so_sure_about


From: Mert Çaliskan [mailto:[EMAIL PROTECTED]
Sent: Wednesday, May 03, 2006 12:32 PM
To: MyFaces Discussion
Subject: Re: Popup New Window with CommandLink onclick attribute

to pass parameters between pages via url,

http://www.jroller.com/page/mert?entry=how_to_pass_request_parameters

Regards,

Mert..

On 5/3/06, Romanowski, Tim <[EMAIL PROTECTED]> wrote:
Thanks Matthias, the link you've listed does explain why I am not
setting a value before the onclick method is called.  Unfortunately,
although that explains why I cannot update a backing value via a binding
method before opening a new window, I still am at a loss as to how I can
in fact open a new window that is passed the current value of my
datatable row.

**Does anyone have an example where they generate a popup window and
pass a value for use by the new window?  I do not understand how a
managed bean might be instantiated if I am submitting a form via
_javascript_, as explained below.  Ideally, I'd like to simply have a
commandLink in my dataTable that I can use to open the new window, and
bind a value before the page in that window is actually executed.

I _have_ tried one thing that is similar a hack used for getting the
apache display taglib to work with commandLinks: In addition to
surrounding my JSF datatable with a form tag, I've included in that form
tag a standalone commandLink.  I then call a _javascript_ method from the
datatable which sets the _link_hidden_ value of the form to the page I'd
like to open; I also set a dummy param value (I called it "id") like so:


<h:form id="myMainForm">

<t:dataTable value="#{pageFlow.dataList}" var="dbRow">
... Some table columns  ...
<t:column>
   <f:facet name="header">
     <f:verbatim>Header Name</f:verbatim>
   </f:facet>
   <h:form>
     <h:commandLink
         value="#dbRow.cellValue}">
     </h:commandLink>
   </h:form>
</t:column>
... More columns ...

<t:commandLink action="" id="viewNewPageLink"
   <f:param name="id" value="" />
</t:commandLink>

</h:form>


<script type="text/_javascript_">
function myJavaScript(cellValue){
  var f = document.forms['myMainForm'];

f.elemnts['myMainForm:_link_hidden_'].value='myMainForm:viewNewPageLink'
;
  f.elements['id'].value=cellValue;
  f.submit();
}




-----Original Message-----
From: [EMAIL PROTECTED] [mailto: [EMAIL PROTECTED]] On Behalf Of
Matthias Wessendorf
Sent: Tuesday, May 02, 2006 5:55 AM
To: MyFaces Discussion
Subject: Re: Popup New Window with CommandLink onclick attribute

> befor executing an action.  However, because I am using the onclick
> attribute to open a new window, the window seems to be rendered before

> the updateActionListener actually sets the value.  Since the target
> attribute

this is because you are doing a "non-postback" request Phase 1
(RESTORE_VIEW) goes directly to Phase 6 (RENDER_RESPONSE)

you may take a look at [1]

-Matthias
[1] _javascript_ w/ JSF
(http://wiki.apache.org/myfaces/_javascript_WithJavaServerFaces )

> doesn't work, I can't do something like 'target="this.form._blank".  I

> am using Apache Beehive for my pageflow controller, and am attempting
> to set a value in my controller class; the idea is that when the popup

> page is created, the new page's backing bean can grab the value I
> previously set in the controller via the commandLink.
>
> I'm new to webapp development and jumped into JSF/Beehive headfirst,
> so my misunderstanding of _javascript_ may be the culprit.  Any help
> would be greatly appreciated.
>
> Here's a sample of the code:
>
> <t:column>
>   <f:facet name="header">
>     <f:verbatim>Header Name</f:verbatim>
>   </f:facet>
>   <h:form>
>     <h:commandLink
>         value="#dbRow.cellValue}">
>         <t:updateActionListener
> property="#{pageFlow.thisSetsValueInMyController}"
> value="#{dbRow.cellValue}" />
>     </h:commandLink>
>   </h:form>
> </t:column>
>
> _javascript_ (currently in same page for trying this):
>
> <script type=text/_javascript_">
> Function myJavaScript(cellValue){
>   popup =
> window.open("http://localhost:8080/XYZ/controller/goNewPage.do",
>                                   "page name",
> "height=300,width=300,resizable=1,toolbar=no,menubar=no");
>   popup.focus();
> }
> </script>
>
>
>
> TR
>


--
Matthias Wessendorf
Aechterhoek 18
48282 Emsdetten
http://jroller.com/page/mwessendorf
mwessendorf-at-gmail-dot-com


Reply via email to