|
Hello Friends
I am using file object to with URL path as parameter to pass filename to some function.But it is not creating File Object.I tried like this:
String filePath="http://test.com/folder/file.txt
File f = new File(new URL(filePath).toURI());
And like this too
File f = new File(new URL(filePath).getPath());
but it is crashing at this point.
Any Ideas Guys.
Thanks In Advance.
Regards
Yogesh
|
|
|
|
|
yogeshs wrote: but it is crashing at this point.
Any Ideas Guys.
Well perhaps if you showed the error that you received we may be able to help work out what is going wrong. However, I am not sure that you are allowed to create files on a client machine in this way.
It's time for a new signature.
|
|
|
|
|
Hello Sir
Actually I am facing some exception when I run and its java.lang.reflect.InvocationTargetException.
May be this one useful for you.I searched for this but didnt found anything.
Thanks & Regards
Yogesh
|
|
|
|
|
The explanation is here[^], also some discussion about what information it holds. You should catch this and then display its cause details to help identify what is going wrong.
It's time for a new signature.
|
|
|
|
|
Guys
I'm trying to applying singleton pattern to TCP server client application
But I get some run time exceptions.I tryed out diffrent ways.
Please give me your suggetions to correct this
here TCPServer is the Singleton
in my client(TCPClient) I want to access TCPServer but I can not do it.
TCPServer Class
import java.io.*;
import java.net.*;
class TCPServer {
private String capitalizedSentence;
private ServerSocket welcomeSocket;
private String clientSentence = new String(" d");
private BufferedReader inFromClient;
private DataOutputStream outToClient;
private Socket connectionSocket;
private static TCPServer instance = null;
private TCPServer() throws Exception {
}
private TCPServer(int socketID) throws Exception {
if( welcomeSocket==null){
}
}
public static TCPServer getInstance() throws Exception {
if(instance == null) {
instance = new TCPServer();
System.out.println("This is new server instance created");
}
else if(instance !=null){
System.out.println("This is old instance");
}
return instance;
}
public void method()
{
System.out.println("This is server");
}
public void run() throws Exception{
welcomeSocket = new ServerSocket(6789);
while(clientSentence.equals("exit")!=true) {
connectionSocket = welcomeSocket.accept();
inFromClient = new BufferedReader(new InputStreamReader(connectionSocket.getInputStream()));
outToClient = new DataOutputStream(connectionSocket.getOutputStream());
clientSentence = inFromClient.readLine();
System.out.println("Recived from client : " + clientSentence);
capitalizedSentence = clientSentence.toUpperCase() + '\n';
outToClient.writeBytes(capitalizedSentence);
}
}
}
TCP Client Class
import java.io.*;
import java.net.*;
class TCPClient {
private String sentence,modifiedSentence;
private DataOutputStream outToServer;
private BufferedReader inFromServer;
private Socket clientSocket;
private BufferedReader inFromUser;
public TCPClient() throws Exception{
inFromUser = new BufferedReader(new InputStreamReader(System.in));
clientSocket = new Socket("192.168.1.2", 6789);
outToServer = new DataOutputStream(clientSocket.getOutputStream());
inFromServer = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
}
public String getSentence()
{
return sentence;
}
public void setSentence(String str)
{
this.sentence=str;
}
public String getModifiedSentence()
{
return modifiedSentence;
}
public void setModifiedSentence(String str )
{
this.modifiedSentence=str;
}
public void run() throws Exception{
System.out.println("Enter a String");
sentence = inFromUser.readLine();
outToServer.writeBytes(sentence + '\n');
modifiedSentence = inFromServer.readLine();
System.out.println("FROM SERVER: " + modifiedSentence);
TCPServer mySever = TCPServer.getInstance();
clientSocket.close();
}
}
Calling class
To Server
public class Server{
public static void main(String[] args) throws Exception{
TCPServer x = TCPServer.getInstance();
x.run();
}
}
To client
public class Client{
public static void main(String[] args) throws Exception{
TCPClient client = new TCPClient();
client.run();
}
}
|
|
|
|
|
Nadunwow wrote: But I get some run time exceptions.
Well it's not easy for us to guess what those may be. Please explain exactly what exceptions you get, and where in the program (i.e. line of code) that they occur.
It's time for a new signature.
|
|
|
|
|
I fixed them
and Not code is updated.
Then I get another problem
I need only one instance of siglton(TCPServer).
But My client connect to one instance but How can I access that instance in TCP client ?
if I can not is it possible to pass the TCPClient as a object to TCPServer ?
What is the procedure I should follow ? Any idea ?
|
|
|
|
|
Sorry, but I'm not sure what you are asking.
It's time for a new signature.
|
|
|
|
|
I'm not sure he is either.
Panic, Chaos, Destruction.
My work here is done.
or "Drink. Get drunk. Fall over." - P O'H
|
|
|
|
|
There could be several answers depending on the /real/ question. Are you looking for:
A single server that many clients connect to?
A server that accepts one and only one connection?
A client that can only connect to the server once?
Just because you've read about the singleton, does not mean it is the right pattern here.
Panic, Chaos, Destruction.
My work here is done.
or "Drink. Get drunk. Fall over." - P O'H
|
|
|
|
|
I am just started playing with java an I am having this issue. I did the simple hello world app like this:
class HelloWorldApp {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
And when I run it in eclipse the console shows Hello World!, But if I run it in the terminal as "java Hello?WorldApp.class"
It will not run it just gives me the error "Class not found". Why is this? Thanks. Running Ubuntu 10.04.
Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorldApp/class
Caused by: java.lang.ClassNotFoundException: HelloWorldApp.class
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:334)
Could not find the main class: HelloWorldApp.class. Program will exit."
Y*Live Long And Prosper*Y
|
|
|
|
|
Why did you add ".class" after the class name ? You should execute it like this: java HelloWorldApp
|
|
|
|
|
Ohhhh... I didn't know that. Thanks!
Y*Live Long And Prosper*Y
|
|
|
|
|
Hello Friends
I am reading a file that is one level down in directory from my source file.
Suppose if my source file is in c:\Test\source then file that I m reading is in c:\Test\test1\readFile.
If I provide full path then it is loading but if i provide relative path like test1/readfile then it is not laoding.
Is there some different way in java to load file from relative path?
Any Help will be Appreciated.
Thanks & Regards
Yogesh
|
|
|
|
|
I would guess that your code is in c:\Test\source , but where is the jar?
Secondly, when you run the jar, either from the command, double click or via the IDE, what is the runtime execution folder? That is where you should be reletive to, using .. to go up and . for the current folder.
Panic, Chaos, Destruction.
My work here is done.
or "Drink. Get drunk. Fall over." - P O'H
|
|
|
|
|
Hello Nagy
First,Thx for ur Reply.
My jar file is also in same source folder. And I am running it by double click the jar file that opens my application.After that i am loading file on some button click.
And Is there any difference If I use front Or backSlash while giving the relative path?
Thanks Once Again for ur Precious time to answer my question.
Regards
Yogesh
|
|
|
|
|
Hi guys
Actually This is an applet where I am loading a file.Now,when I run from some hard drive location with parameter '.\test1\readfile then Its working with this relative path and in firefox browser not in IE.
Now When I Load the same in localHost and then tried then it is not loading even in firefox with relative path.
Now,two question.why its not loading in IE with relative path?
Why its not loading when I run in LocalHost?
Any ideas Please?
Thanks & Regards
Yogesh
|
|
|
|
|
Hello Guys
The main problem is that i want to load resources through jar applet from System or when it is host?
ANy Ideas Now?
Regards
Yogesh
|
|
|
|
|
The simple answer to your question is "don't". Using relative paths can never be relied upon as your application has no control over the setting of the current directory. Always use absolute path specifications or use an environment variable as the root to the relative path.
It's time for a new signature.
|
|
|
|
|
Hello Richard Sir
But how can I use everytime absolute path when I have to host the site.then while loading file I need to specify some system independent path ?
Any Ideas?
Regards
Yogesh
|
|
|
|
|
Hello Guys
Do u know how can i set system properties of jvm in which i can specify the path.We can set it thru Project properties then under run in vm options
With -D and after that what we have to write?
Any Ideas?
Regards
Yogesh
|
|
|
|
|
java -D"property=C:/dir/subdir" class
Your program can now find the value of 'property' through the java.util.Properties class.
It's time for a new signature.
|
|
|
|
|
Take a look at
System.getProperties().list(System.out);
this will give you a list of all the default system properties, so you can figure out where your file should be stored so you can address it with a relative path.
It's time for a new signature.
|
|
|
|
|
Hello Sir
I setted System properties of jvm with -DservPath=c:\test
And when I tried to get property,it is returning null. I tried like this
Properties prop = new Properties();
String path = prop.getproperty("servPath");
And like this too
String Path = System.getProperty("servPath");
I want to tell u that this file is not in jar file,this is out of jar file that i want to load.
In both cases,it is returning null.
Its looking like i am very near.
What happening Now sir?
Regards
Yogesh
|
|
|
|
|
yogeshs wrote:
Properties prop = new Properties();
That can never work as you are creating a new Properties object which will be empty. The value will be inserted into the System.Properties and you should be able to obtain the value by
String path = System.getProperty("servPath");
which works in my test. You may want to check you are making your java call correctly like this
java -DservPath=c:\test [jar or class name ]
It's time for a new signature.
|
|
|
|