|
Did you read his question?
He has an existing reporting tool that uses JDBC. He would like to use that reporting tool to access data in XML format.
His question is: is there any JDBC driver that will allow him to use the reporting tool directly on the XML data? Failing that, he could extract the XML into a database and then run the reporting tool over that, but he would rather not.
He is not asking about how to manipulate XML data. He is asking how to read XML through JDBC because that is the constraint he has in place with his reporting tool.
|
|
|
|
|
David Skelly wrote: He has an existing reporting tool that uses JDBC. He would like to use that reporting tool to access data in XML format.
I missed that.
|
|
|
|
|
Zig158 wrote: Does anyone have any suggestions on a JDBC driver that will read an XML File?
Now that it was pointed out that that I misread your question...
What is the complexity level of the report -> xml interface?
If it isn't too significant then one option would be to write your own JDBC driver. Put only the functionality you need into it. Something like a select with some simple where clauses isn't that difficult to convert into a xpath with the result set spanning the result of that.
|
|
|
|
|
I was hopeful that I could avoid writing something custom/new, but it sounds like that is the case. I could rewrite the reader interface for CSVJDBC.
|
|
|
|
|
Zig158 wrote: I could rewrite the reader interface for CSVJDBC.
Not a bad idea actually. That gives some trivial functionality for SQL that you then would not need to create yourself.
|
|
|
|
|
As another thought...
You mentioned loading to a database would be a problem. Why specifically?
As one possibility on that route, use the embedded version of Derby. That wouldn't require external resources and it already has the JDBC driver. So the only problem is the load itself.
|
|
|
|
|
i have this in my code:
properties props = new properties();
props.put("mail.transport.protocol", "smtps");
How do i replace those "properties.put" without having to use the properties ?
|
|
|
|
|
cool - it took just 2 weeks to figure out properties - fantastic!
You can write your own properties-file. It is a basic ASCII text file.
Or you save your data on an object. This requires programming.
regards
Torsten
I never finish anyth...
|
|
|
|
|
yes i managed to figure out. i am teaching myself programming. Yes i manage to learn how to write a properties file alrdy..
|
|
|
|
|
pancakeleh wrote: How do i replace those "properties.put" without having to use the properties ?
What does this sentence mean? Are you saying that you want to write into your properties file without using the properties class?
I must get a clever new signature for 2011.
|
|
|
|
|
oh the "prooperties.put" refers to writing to the properties file without having to key it in the properites file?
modified on Monday, January 31, 2011 8:27 PM
|
|
|
|
|
pancakeleh wrote: oh the "prooperties.put" refers to writing to the properties file without having to key it in the properites file?
The key is "mail.transport.protocol" and the value is "smtp".
|
|
|
|
|
pancakeleh wrote: writing to the properties file without having to key it in the properites file?
Still does not make sense. Try a full explanation of exactly what it is you are trying to achieve.
I must get a clever new signature for 2011.
|
|
|
|
|
for this line of code:
this line sets the properties for sending mail.
like u can put smtp.gmail.com (set host)for sending mail from gmail account.. and second argument is for port
for gmail 587/465
default port is 25/26.
got it ?
you can ask me for more information
|
|
|
|
|
Hi,
i have developed a Java program to convert an infix expression into a postfix expression but in output i am getting null. Below is my program . There is some conceptual mistake but i am unable to find it out. please help me...
import java.util.Stack;
public class infixToPostfix{
private int index;
private char ch;
private char lparenthesis='(';
private char rparenthesis=')';
Stack stack=new Stack();
private String output="";
public boolean isOperator(char op){
if(op == '^' || op == '*' ||op == '/' || op == '%' || op == '+' || op == '-')return true;
else return false;
}
public boolean isOperand(char opr){
if(opr >= 'A' && opr <='Z')return true;
else if(opr >= 'a' && opr <= 'z')return true;
else return false;
}
public int getPrecedence(char c){
switch(c){
case '(': case ')': return 5;
case '^':return 4;
case '*': case '/': case '%': return 3;
case '+': case '-': return 2;
}return 0;
}
public String getPostfix(String expr){
stack.push('(');
for(index=0;index<expr.length();index++){
ch=expr.charAt(index);
if(isOperand(ch)){
output=output+ch;
}
else if(ch == lparenthesis){
stack.push(lparenthesis);
}
else if(isOperator(ch)){
Object pop=stack.pop();
char ch1=pop.toString().charAt(0);
while(getPrecedence(ch1) >= getPrecedence(ch) ){
if(!stack.empty())stack.pop();
else break;
if(isOperator(ch1)){
output=output+ch1;
}
}stack.push(ch);
}
else if(ch == rparenthesis){
while(stack.pop().toString().charAt(0) != lparenthesis){
if(isOperator(stack.pop().toString().charAt(0)))
output=output+stack.pop();
}
}
else {
System.out.print("error.");
}
}
stack.clear();
return output;
}
}
modified on Saturday, January 29, 2011 1:19 AM
|
|
|
|
|
Firstly could you please edit the above and place the code between <pre></pre> tags (not code) so it is correctly formatted. Secondly try and narrow down the problem to the method or block of code relevant to the error; don't just expect people to analyse all your code without having the background knowledge of what it is trying to do.
I must get a clever new signature for 2011.
|
|
|
|
|
hey, i have edited it.... please tell me where is the error....
|
|
|
|
|
WindowsVsLinux wrote: please tell me where is the error
I have no idea, it's your code; tell us where it goes wrong and what happens and we may be able to make some suggestions.
I must get a clever new signature for 2011.
|
|
|
|
|
WindowsVsLinux wrote: but in output i am getting null
That can only happen in an expression that actually does something with output.
You can debug this by putting a print BEFORE each assignment to output and printing ALL of the values that you use in the expression.
You use output 4 times.
1. private String output="";
2. output=output+ch;
3. output=output+ch1;
4. output=output+stack.pop();
1 cant be null.
2/3 would require that ch/ch1 are null. But both are char data types. And that data type cannot be null.
So that only leaves 4.
I can't be sure about what is happening with 4 but it certainly looks like you have a lot of pop() calls just before that. And since pop() removes the item on the stack I am not sure what you think is going into output.
|
|
|
|
|
Thank you very much..... i was also thinking about that point.... i should do stack.pop() till !stack.isEmpty() is true... but there is another condition also... each time precedence should be checked... how can i do this....???
|
|
|
|
|
I don't understand the question.
However if you need to pop a value and do several checks on that value then you pop the value into a variable and then do the checks on the variable.
|
|
|
|
|
Hi,
I am looking to add a PDF markup/comments functionality on my website.
I've looked into ConceptShare http://www.conceptshare.com/[^] , WebProof....which are tools that can be integrated with my website except they are tooo expensive.
Are there any other options?
|
|
|
|
|
Why have you posted this on the Java forum?
|
|
|
|
|
It needs to be plugged into an existing Java site
|
|
|
|
|
But it's still not a Java question. If you want some free software then try a Google search. There are a number of PDF libraries around that may do what you want.
I must get a clever new signature for 2011.
|
|
|
|