Jsf and javascript variables
Hello, I am working on a visual jsf project.Inside my project, in a bean java class I have a string variable.Also, I have a jsp page in my project which has some javascript code inside it.Now, I want a method of the javascript to get the value of the string variable that I have in my bean.How is that possible?
for example, I have the method
function showAddress(address){
and a variable in my bean: String addr;
So I want when I run my project, the value of "address" in my javascript function to have the value of the string addr,but I haven't figured out how I can do that.
as balusc said:
The jsf code is generated on server side, then sent to the client (browser). At this time javascript can't call any jsf related code anymore.
But what you can do is assign a value to a javascript variable when you are processing the jsf file on the server side. Or you can work with ajax and make requests to the server...
If you work with an IDE, you will notice it will not allow you to assign a javascript value to a jsf variable, no matter how you write it :) The other way round it works
Similar Messages
-
Jsf and javascript to disable a button
Hi
is there a way to get the following code to disable the button called next
when the button "btn" is clicked i call the javascript function myFunc but it does not disable the button called "Next"
<html>
<head>
<title>Personal Info</title>
</head>
<body>
<script type="text/javascript">
function myFunc()
document.personalForm.Next.disabled=true;
</script>
<f:view>
<h:form id="personalForm">
<h:commandButton id="Next" value="Next" action="doSomething" />
<h:commandButton id="btn" value="button" immediate="true" onclick="myFunc()" />
</h:form>
</f:view>
</body>
</html>You should write Javascript according to the HTML source, not to the JSF code.
View the generated HTML source and base your JS on that. -
As far as I can see JSF is just a non-portble more verbose version of HTML which just generates a subset of HTML more slowly and with extensive studying a new HTML-like language.. It seems to add nothing, take away a lot, and double complexity.. But that is not important.. Why would web developers want to load the server with validation code when JavaScript in the Browser can increase performance by a factor of 100.. Shouldn't we be striving to use JavaScript in the Browser to enrich and speed up the user experience instead of cutting that avenue off and reinventing an even more clunky and obscure wheel? Is there anyway to have a "tabbed pane" which doesn't rebuild an entirely new page and send it back to the client? Similarly, do any of the implementations encourage client-side validation of simple form inputs using Javascript. Java seems to be being taken over by people with IQs hovering around 100.. I have never understood where most of the J2EE expeditions do anything for Comp. Sci. except reinvent a slower more obscure less portable version of something already a standard..
Troa, my website has been moved and I need to work on it to get it working again.. I have the source code but I think that would just be confusing.. Basically, there are buttons which call a Javascript function with onClick().. The function shows a form with stuff like this
function show(formname)
formEl[oldform].style.display = "none";
var form = formnum(formname);
formEl[form].style.display = "block";
oldform = form;
and some other DHTML using the newer browser Javascript to just hide a form of components and display another one.. All the components are downloaded at the start.. The buttons just hide and disply..
As for 1000s of records in tables, it works beautifully if you zip the data as a javascript array.. When the next button is pressed another Javascript function renders the HTML for a page.. It is less network traffic than one page of a normal table.. I'll get it back up working soon and point you to it and the source code.. I just need to install Sun Web Server on my Website, but it is very small in terms of disk size..
Maybe you should send me your email so we are not filling the forum with personal communication.. My email is [email protected] -
How to use javascript variable in BSP/ABAP and vice versa
Hello Experts,
In IC WEBCLIENT, there is a view.In the view.htm i want to fetch the screen resolution and as per the resolution i want set the width of that view.
1, I wrote the below javascript to fetch the screen resolution.
Can i use a notmal ABAP variable inside the javascript? and If i use can i access that variable after the javascript.?
Can i assign a javascript variable to a nrmal abap variable??
The code sample is like :
Start of javascript
if (screen,width == 1024 )
lv_width = 500 "lv_width is an ABAP variable.
else
lv_width = 700
**END OF JAVASCRIPT
**Now i want to use lv_width to assign to a table view attribute(Width)
<crmc: tableview..
width = <%= lv_width >
the code is not giving any error. But the problem is that lv_width is not giving the correct value, its getting initialized to initial value...
Requesting the experts to please provide some suggestions/solution for the above issue.
Thanks and Regards
SudhansuHello Sudhansu,
First of all there was a little mistake at my previous answer:
you got lw_width = 700
because at Server Side you have following code:
lw_width = 500.
lw_width = 700.
but if you were writing your code like this:
<%=lw_width %> = 700.
then you will get the result that I was talking about : 0 = 700
Sorry for the mistake
Now for your question:
if you want to get a value from the server and assign it to JScript variable you should write like this :
var aaa;
aaa = <%=lw_width %>;
this code assign the server variable lw_width value into aaa JScript varible.
I'm not sure what exactly you want to do but look at this link:
http://www.pageresource.com/jscript/jscreen.htm
to get the idea how to get and use Screen Resolution variables at your JScript code.
Good luck
Eli Steklov
Please Reward Points if it Helped -
Can anyone tell me how to access JSF objects from JSTL tags?
I want to set a requestScope flag in my changeListener
... context.getExternalContext().getRequestMap().put("xxx","ok"); ... and render output depending on existance of this flag:
...<c:if test="${requestScope.xxx!=null}" > .... .
This examplecode doesn't work, JSTL tags cannot access this var! How can I do that?
What I realy want is to reload another frame when user changed a specific input field.
Above code should add a JavaScript to reload the frame if this is true .
I can't do this on submit because the other framepage uses the stored/modified data.
Maybe there's a better approach for this anyway?
Thanks for your help!Thanks for your help - I found it was my own mistake why it didn't work. Now it does, as you said.
But in the meentime I ran into another Problem mixing JSTL und JSF:
I want to build a SelectOneMenu and populate it with data from a database, but with selectItemValue
other than selectItemLabel (value should be numeric DB-ID, label a readable name).
Since "selectItems" allows only one dimensional Arrays (?) as parameter, I must use "selectItem" for
each row. So I wrote following code:
<h:selectOneMenu id="m1" value="#{worktime.employee}">
<sql:query var="employees" dataSource="jdbc/WebOfficeDB">
select oid,displayname from employees order by displayname asc
</sql:query>
<c:forEach var="row" items="${employees.rows}" >
<f:selectItem itemValue="#{row.oid}" itemLabel="#{row.displayname}" />
</c:forEach>
</h:selectOneMenu>This doesn't work, I get NullPointer Exceptions from selectItem.setValue().
I think because JSF "#" references another context than JSTL "$" - is this correct?
So I tried to set a JSTL variable inside the forEach loop to access the datarow
<c:set var="data" value="${row}" scope="request"/>
<f:selectItem itemValue="#{requestScope.data.oid}" itemLabel="#{requestScope.data.displayname}" />
...The effect is that all lines of the selectOneMenu have the same content (from the last datarecord)!?
Since this is my first project in JSTL and JSF and should stay a small one I don't want to go into building
CustomComponents and so on for such a simple Task.
I would be very very happy for some tips and hints, since I think this mixing of JSTL and JSF Context
will be a very common problem within my project.
Thanks -
Assigning a java value(filepath) to a javascript variable
I have a JSP where I have a java variable(obtained from session) which is nothing but a filepath(say C:\superb.xpdl). When I try to use the variable in javascript using var scriptVar = "<%= sessionVar %>";, the sessionVar value i.e. the filepath is getting modified (like C:superb.xpdl). Slashes are interpredted in a different way(\t for tab, \n for new line etc.,) How to get the filepath with no modifications while assigning to javascript variable? will encoding(using escape()) and decoding help?
unfortunately you need to double up the slashes
maybe this will work
scriptVar = "<%= sessionVar.replaceAll("\\", "\\\\") %>";
or maybe it will cause a infinite recursion problem (i'm too lazy to try it) -
How can i assign a Javascript variable to JSP variable
Hi guys
how i can assign a javascript variable to jsp expression.,
e.g.,
<input type = "button" value = "Add more" onclick = "return submitform1('<%=s%>')">
function submitform1(String s)
var s1 = s
document.form1.action = "../intimation.do"; /* Here i want to pass the value s1 to jsp or servlets without using hidden fields and Query string*/
document.form1.submit();
return false;
/* i want to pass the values thru session whether it is possible */
pls give sample code
Reply
MarimuthuYou don't have the session.
All you have is HTTP.
The only way to communicate from the client to the server is via an HTTP request. The only way to send a value like that is with a parameter.
Using a form with method="submit" as mentioned will pass the parameters without displaying them in the url bar (is that what you wanted?) -
Using javascript variable in spry if statement
is it possible to put a javascript variable in to the spry if
statement to test?
like <div spry:if="javascriptvar == {ds_RowNumber}"....
thanks.Hi rogerfreak,
When the region processes a spry:if, it simply takes the
value of the spry:if attribute, replaces all of the data references
in it with real values from the data set and then evals the result
(executes the string).
So you can do something like:
<script>
var ds1 = new Spry.Data.XMLDataSet("foo.xml", "/foo/bar");
var gMode = 5;
function GetMode()
return gMode;
</script>
<div spry:region="ds1">
<ul spry:if="gMode == 5">
<li spry:repeat="ds1">{name}</li>
</ul>
<div spry:if="gMode == 12" spry:repeatchildren="ds1">
{name}
</div>
</div>
In the example above the list markup will be written out if
gMode is 5, but if it is 12, it will write out the div markup.
You can also call functions:
<div spry:region="ds1">
<ul spry:if="GetMode() == 5">
<li spry:repeat="ds1">{name}</li>
</ul>
<div spry:if="GetMode()== 12"
spry:repeatchildren="ds1">
{name}
</div>
</div>
--== Kin ==-- -
How to pass javascript variable to PLSQL stored procedure
Hi,
How can I pass a javascript variable to a database procedure. I have a form with a radio button group and would like to save the value of the selected radio button to a database table by passing the value to the stored procedure.
ThanksHi
You can use iframe to call the procedure. Here is an example used in dynamic page or pl/sql portlet. The pl/sql procedure is called myprocedure and resists in the schema myschema. This example passes 2 parameters, but I have not yet reased a limit.
First the call within a javascript function:
myiframe.location.href="myschema.myprocedure?p_myprameter1=" + vJvascriptparameter1 + "&p_myprameter2=" + vJvascriptparameter2;
Then the iframe:
<iframe id="myiframe" height="0" width="0" frameborder="0"></iframe>
You can let the pl/sql procedure print a value, that can be used i the portlet. You can get the value in a javascript this way:
myvalue=top.window.frames["myiframe"].document.body.innerHTML;
Best regards
Klaus -
How to assign Javascript variable to ABAP variable
Hi All,
I have a requirement to create a page where each of the table cells will have drop down boxes with Red, Yellow and Green colors.
When the user selects the color it has to be saved to database.
Now the problem is, I'm using HTML as HTMLB was very complicated for the kind of layout the client needed.
I have created a onChange event for each of these drop down boxes (please keep in mind the dropdown ids are dynamically created by looping the ABAP internal table).
I'm passing this.id on change event and capturing the id name. Now using this id I have to read an internal table.
But the problem is, this is javascript variable and cannot be passed directly to read table statement.
Please help me in this regard.
Lots of points will be given for valuable inputs.
PS: I have gone through the thread Assign a Javascript variable value to a ABAP variable
But doesn't seem to work for my case as I'm using HTML.Hi Chait,
you need to populate a HTML form field with the variable. Most commonly people use the...
<INPUT type="hidden" id="param1">
construct.
In your javascript you can then just set the value of param1.
Of course you could also dynamically create the elements at runtime in your javascript code.
Cheers
Graham Robbo -
How to pass the javascript variable value to a jsp
Hi
I am trying to set a javascript variable with onClick event of a radio button in jsp
and I am assigning this variable to a hidden property in JSP whic has the corresponding getter an setter method in form.
But I am not able to retrtieve the value assigned in either form/action .can any body help me in this:
The code is
<script language="javascript">
var jais="";
function setValue(val)
jais=val;
document.o.value=jais;
</script>
<html:hidden property="o" value=""/>
<input type=radio name="1"
value="xyz"
onclick="setValue('XYZ')" >
ABC
and in the correspoding form bean I have
private String o_val =null;
public String geto()
return o_val;
public void seto(String strs)
o_val=strs;
In the action I am trying to access
by
1)String j=((form name)form.geto();
2)String j=request.getParameter("o")
but with both of them I am getting the value null
Thanks in AdvanceYou need to set the value of the hidden field in your function.
Setting an unrelated variable will not help.
function setValue(val)
document.forms[0].o.value = val;
also your get/set methods should be getO() and setO(). -
Assign a Javascript variable value to a ABAP variable
Hi,
I wish to assign a javascript variable value to a ABAP variable. Any ideas how to do that?
Many thanks.
Rgds,
BerniceHere's another suggestion for you.
BSP Application: SBSPEXT_HTMLB
Check out the radionbuttongroup.bsp
So then instead of using a standard HTML radio buttons you can use the HTMLB element with the parameter for onClick set then in your DO_HANDLE_EVENT you can read the value.
VIEW
<htmlb:radioButtonGroup id="radio">
<htmlb:radioButton id="id_link"
text="Link"
onClick="myClickHandler"/>
<htmlb:radioButton id="id_unlink"
text="Unlink"
onClick="myClickHandler"/>
</htmlb:radioButtonGroup>
DO_HANDLE_EVENT
DATA: lt_event TYPE REF TO if_htmlb_data.
lt_event = cl_htmlb_manager=>get_event_ex( request ).
if lt_event IS NOT INITIAL.
if lt_event->event_name = htmlb_events=>radiobutton.
case lt_event->event_id.
when 'control_id_link'.
schalter = ' '..
when 'control_id_unlink'.
schalter = '1'.
endcase.
endif.
endif.
There is an example of how to use it and read it in the DO_HANDLE_EVENT you then just have to pass the variable around (in this example the variable name is schalter and is defined as char1 in the class) -
Assigning values to a javascript variable
Hi,
Using request dispatcher, i'm forwarding the control to a html from a servlet like this(obj.forward(/index.html?field1=value1&field2=value2).
In the receiving end, ie., in the html i would like to assign those 2 field1,field2 values to a javascript variables. Javascript located in the index.html.
I don't know how to do this.
Pls any one help me to get of this pblm
Thanks in Advance
Kannan.THi thanks for ur reply,
You r telling while forwarding a request from one
servlet to another servlet, we can't add query
string(requestparameters). But then how come this
code is working?
RequestDispatcher
rdis=getServletContext().getRequestDispatcher("/MyServ
let?type=normal");
rdis.forward(req,res);Well I owe an apology here - I was not completely correct. I have tested and found that you can indeed add parameters that way. The catch is that these parameters are nested to that forwarded /included resource. It is not available in the original jsp or to some other resource included from the original jsp unless ofcourse you add the parameter again.
>
please give me a solution.
Like this i have to forward my request (with
querystring) to a html page.
That htmlpage should receive parameters and assign
the values to a javascript variables.
how can i achieve this.
thanks in advance.My original reply stands.
You cannot do that in a html page. You have to have a jsp that generates the html.
ram. -
How to assign a JSP variabl's value to a JavaScript variable?
Hello,
I want to assign a JSP variable's value to JAVASCRIPT variable.
or how to assign JavaScript variable's value to JSP varialbe
HOw do i do it ?
can anyone please help?
Regards and thanks for your time.
AshviniI want to assign a JSP variable's value to
JAVASCRIPT variable.
var jsVariable = <%=someVariable%>;
or how to assign JavaScript variable's value to JSP
varialbeYou can't. JSP is server-side and JavaScript is client-side. The JSP variables are never available on the client side for any sort of assignment. -
How to save javascript variable in database
Hi all,
I'm trying to save a javascript variable to the database. What is the smartest way to do this. I searched the forum, but don't seem to find the answer.
I' m using the following htp.p code.
htp.p('
GEvent.addListener(map, "click", function(marker, point) {
if (marker) {
map.removeOverlay(marker);
} else {
var marker = new createMarker(point,"This place","Some stuff to" +
"display in the<br>Last Info Window");
var point = marker.getPoint();
var lat = point.lat();
var lng = point.lng();
alert("Long " + lng);
alert("Lat " + lat);
map.addOverlay(marker);
marker.openInfoWindowHtml(lat);
insert into employees(employee_id,
geom)
values (8
,SDO_GEOMETRY(2001, 8307, SDO_POINT_TYPE(lat, lng, NULL), NULL, NULL)
commit;
htp.p('
The code works fine when I substitute the 'lat' and 'lng' variables for hard coded data.
Since javascript is a dynamic content on the page, the abaove code probably can't work.
I get the error: column not allowed here.
Is there maybe a html_db procedure which I can use?
Thanx,
PimIt seems, you can accomplish this with htmldb_Get ( http://apex.oracle.com/pls/otn/f?p=11933:63). You should create a process with your insert statements and reference it by instantiating of htmldb_Get object.
Best regards
Maxim
Maybe you are looking for
-
In updating my iTunes,I got a message "Service Apple Mobile Device failed to start. verify that you have sufficent priviliges to start system services". Cant figure out what to do
-
File orientation on the designjet 800ps, using mac os x and photoshop
Hi everyone We're having a problem with the orientation of the printout we're getting from a designjet 800PS...... The printer is working fine (except for some slight banding), but we are trying to work out the orientation first. Essentially when we
-
Gettin Entire cell in MS-Excel Sheet?
Hi Friends, I'm trying to get the data from MS-Excel and then try to persists in the data base... here my code goes like this: try { Long OID; String Pricing_Type; Float Min_Spend = null; Fl
-
Hi, the syncing of the calender with my iPad mini via iTunes 11 and an iMac 27 still running 10.6.8 just doesn't work right. Could the problem be 10.6.8? When I first got the iPad mini a few months ago, syncing did seem to work fine with the calender
-
Oracle Metadata Integrator not showing relationships
Hi, We are having Information Steward version 14.2.1.220 and we ran the JDBC driver version for Oracle database is 11.2.0.1.0. It ran successfully but dint collect the relationships(impact, lineage etc). Here I have attached the log file. Can anyone