Hello
Being new here, I apologize if this is in the wrong subsection (I did see the java section, but am not sure my error lies there).
I have been assigned a project where I am to create a server that lets clients connect and run a simulation, which runs on the server and gives the output to the client. The server requires matlab and gnuplot. The ouputs consist of 6 graphs created from the output data of matlab using gnuplot.
I am using netbeans6.1's run and deploy to test (hence am using Apache Tomcat 6.0.18 )
I am using a random string generator to use as a clients session and storing it in a cookie. The graphs are created on the server using this random string as part of its name (eg. <name>Ia.png).
Thus, to load this image, I am using a javascript to fetch the cookie with the name and then I display the image using document.write("<img src=\""+FILENAME+"\"></img>");
The problem that i encounter when i run this is that the client side shows a broken link (I have checked the link path, it is correct). Now the interesting thing is this; while the client is showing this broken link, if I force an event in netbeans (like say simply ctrl+s or even switch to a different tab to see another file/output), and then ask the client to refresh, the image loads just fine?! Through this, it is confirmed that the link path is correct.
I have no idea why this is occurring or any way to solve this and my deadline approaches so I would highly appreciate it if anybody could give even the slightest insight to what/why is this happening.
Thanks
|
Invasive contributor
|
![]() |
| 2Jan2010,17:41 | #2 |
|
In the below code, why are you using "\" after the filename?
document.write("<img src=\""+FILENAME+"\"></img>"); Check the output from the clients side, I mean check the HTML using view-> source from the browser after the page gets loaded. Check if the html appears correctly. |
|
Light Poster
|
|
| 4Jan2010,19:19 | #3 |
|
This is the code that i now have for printing the image:
Code:
var n=get_cookie("fname");
document.write('<img src="'+n+'Ia.png\"></img>');
Here is the entire code: Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript">
//Function to get cookis on the server side from the client's browser .
function get_cookie ( cookie_name )
{
var results = document.cookie.match ( '(^|;) ?' + cookie_name + '=([^;]*)(;|$)' );
if ( results )
return ( unescape ( results[2] ) );
else
return null;
}
</script>
</head>
<body bgcolor=#1953a0>
<center>
<script type="text/javascript">
var n=get_cookie("fname");
document.write('<img src="'+n+'Ia.png\"></img>');
</script>
</center>
</body>
</html>
|
|
Invasive contributor
|
![]() |
| 4Jan2010,19:24 | #4 |
|
did not noticed that it's an excape sequence
![]() did you check the output on client side? view source from the browser... |
|
Light Poster
|
|
| 4Jan2010,20:15 | #5 |
|
Thanks for the quick reply.
The code i've shown above (2nd code), is the html i get after i view source on client's browser.. |
|
Invasive contributor
|
![]() |
| 4Jan2010,20:31 | #6 |
|
ok.
try making the below 2 lines the part of script tags within the header. var n=get_cookie("fname"); document.write('<img src="'+n+'Ia.png\"></img>'); Or better make a function, and call that function from <body onLoad=function_name()> |
|
Ambitious contributor
|
![]() |
| 4Jan2010,22:36 | #7 |
|
Code:
document.write('<img src="'+n+'Ia.png\"></img>');
Make sure there is a "slash" (/ in case of Linux or \ in case of Windows) in the variable 'n'. If there is no slash in the 'n' variable, do as follows: Code:
document.write('<img src="' + n + '/Ia.png"></img>'); //here escape both the " quote or else don't escape both of them.
Last edited by venami; 4Jan2010 at 22:38.. Reason: Added a comment |
|
Light Poster
|
|
| 5Jan2010,00:37 | #8 |
|
I tried making it a function in the header and use <body onLoad=function_name()>
and also tried the slash venami mentioned, but neither seemed to solve the problem.. The funny part is, that though this gives a broken link (and 404 if i right click and select 'view image'), if i make anything event in netbeans (the ide hosting this code) like change some tab or something like that and then refresh the page, the image appears. This leads me to believe that the path at least is correct since nothing happens to the path. I have also verified that the images do get created in my content folder. |
|
Light Poster
|
|
| 5Jan2010,01:03 | #9 |
|
Edit:
I tried running tomcat completely independently of netbeans and the problem still persists, and this time, i cannot click anywhere (like changing a tab in the netbeans ide) so that the image loads. |
|
Go4Expert Founder
|
![]() |
| 5Jan2010,08:44 | #10 |
|
The problem is not with your server but looks like you have url where there is no image file
|



