Why is my entire XML file all on one line?
I am createing a XML file using DOM. The file is started as a new document and I add child nodes using the appendChild() function. I am also using the transformer class to write the file. The file output is as follows:
<?xml version="1.0" encoding="UTF-8"?><TestSystems><department>Tape<program>T10000A</program></department></TestSystems>
and I want it to be:
<?xml version="1.0" encoding="UTF-8"?>
<TestSystems>
<department>Tape
<program>T10000A</program>
</department>
</TestSystems>
How can I get a nicely formated file?
Here is my code:
import java.io.*;
import javax.xml.parsers.*;
import javax.xml.xpath.*;
import org.w3c.dom.*;
import org.xml.sax.*;
import javax.xml.transform.*;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.dom.DOMSource;
public class XMLTestClass {
DocumentBuilderFactory domFactory;
DocumentBuilder domBuilder;
Document xmlDoc;
String xmlFile = "c:\\test.xml";
/** Creates a new instance of XMLTestClass */
public XMLTestClass() {
try{
domFactory = DocumentBuilderFactory.newInstance();
domBuilder = domFactory.newDocumentBuilder();
//xmlDoc = domBuilder.parse(new File(xmlFile));
// xpath = XPathFactory.newInstance().newXPath();
}//try
catch (ParserConfigurationException e) {
System.err.println("ParserConfigurationException caught...");
e.printStackTrace();
public void run(){
System.out.println("Test");
xmlDoc = domBuilder.newDocument();
Element rootElement = xmlDoc.createElement("TestSystems");
xmlDoc.appendChild(rootElement);
Element deptElement = xmlDoc.createElement("department");
deptElement.appendChild(xmlDoc.createTextNode("Tape"));
rootElement.appendChild(deptElement);
Element progElement = xmlDoc.createElement("program");
progElement.appendChild(xmlDoc.createTextNode("T10000A"));
deptElement.appendChild(progElement);
try{
TransformerFactory tf = TransformerFactory.newInstance();
Transformer transform = tf.newTransformer();
Source src = new DOMSource(xmlDoc);
Result dest = new StreamResult(new File(xmlFile));
transform.transform(src, dest);
catch(Exception exp){}
public static void main(String[] args){
XMLTestClass xml = new XMLTestClass();
xml.run();
}
Thanks for the tip. The code sort of works now but the funny thing is that the file output does not indent, but is no longer on one line. The out put is now (no indents):
<?xml version="1.0" encoding="UTF-8"?>
<TestSystems>
<department>Tape<program>T10000A</program>
</department>
</TestSystems>
Also the line
transform.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2");
[\code]
does not seem to have any affect.
Similar Messages
-
How do I go about deleting mulitple song files all at one time as opposed to deleting them all individually off of the latest version of iTunes?
Also I have tried authorizing my computer to play the songs I purchased off of iTunes when I had an iPhone 4 and it will not allow me to play them whatsoever. I now have an iPhone 5 and wish to load these past song purchases onto my new phone. How do I solve this issue?what you're missing to export multiple files is the batch export command available in the file menu or by control clicking on the items in the browser. You can export multiple sequences/clips at full resolution with this.
This has been available in fcp for a long long time.
Wow, you are right. Now that you mention it, I can't believe I never noticed that. Thanks.
Only if you have the 'Self-Contained' box checked. Otherwise you'll end up with a reference movie.
Correct. That box is typically checked by default. There are other default settings you could change that would not result in a full-quality version, but what I meant was hitting that option from the pull-down menu, then changing nothing and hitting ok. -
How to put grouped results all on one line.
I amt trying to get Principal, Interest, Principal YTD, Interest YTD from a transaction table to get them all on one line, but I can't seem to get it. I have a script here that can run without modification to see what I have here. The very last query is
incorrect, as it puts each value on a separate line, but it demonstrates what I am getting so far. What I want is one account number with 4 columns, as above mentioned. Keep in mind, in this illustration, YTD is last year and forward:
CREATE TABLE #a
PMT_ID INT IDENTITY(1,1),ACCT_NO INT, PMT_TYPE CHAR(1), PMT_AMT MONEY, PMT_DATE DATE)
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 1, 'P', 450, '2012-09-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 1, 'I', 100, '2012-09-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 1, 'P', 450, '2012-10-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 1, 'I', 100, '2012-11-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 1, 'P', 450, '2012-12-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 1, 'I', 100, '2012-12-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 2, 'P', 351, '2012-09-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 2, 'I', 102, '2012-09-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 2, 'P', 352, '2012-10-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 2, 'I', 102, '2012-11-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 2, 'P', 353, '2012-12-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 2, 'I', 102, '2012-12-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 3, 'P', 850, '2013-09-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 3, 'I', 200, '2013-09-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 3, 'P', 880, '2013-10-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 3, 'I', 201, '2013-11-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 3, 'P', 855, '2013-12-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 3, 'I', 203, '2013-12-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 1, 'P', 451, '2013-09-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 1, 'I', 99, '2013-09-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 1, 'P', 451, '2013-10-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 1, 'I', 99, '2013-11-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 1, 'P', 451, '2013-12-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 1, 'I', 99, '2013-12-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 2, 'P', 352, '2013-09-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 2, 'I', 101, '2013-09-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 2, 'P', 353, '2013-10-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 2, 'I', 103, '2013-11-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 2, 'P', 354, '2013-12-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 2, 'I', 103, '2013-12-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 3, 'P', 851, '2013-09-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 3, 'I', 199, '2013-09-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 3, 'P', 881, '2013-10-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 3, 'I', 201, '2013-11-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 3, 'P', 854, '2013-12-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 3, 'I', 205, '2013-12-01')
SELECT PMT_ID, ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE
FROM #a
SELECT ACCT_NO, SUM(PMT_AMT) TOT_PRINCIPAL_PAID
FROM #a
WHERE PMT_TYPE = 'P'
GROUP BY ACCT_NO
SELECT ACCT_NO, SUM(PMT_AMT) TOTAL_INTEREST_PAID
FROM #a
WHERE PMT_TYPE = 'I'
GROUP BY ACCT_NO
SELECT ACCT_NO, SUM(PMT_AMT) TOTAL_PRINCIPAL_PAID_YTD
FROM #a
WHERE PMT_TYPE = 'P'
AND DATEPART(year,[PMT_DATE])=DATEPART(year,DATEADD(year,-1,GETDATE()))
GROUP BY ACCT_NO
SELECT ACCT_NO, SUM(PMT_AMT) TOTAL_INTEREST_PAID_YTD
FROM #a
WHERE PMT_TYPE = 'I'
AND DATEPART(year,[PMT_DATE])=DATEPART(year,DATEADD(year,-1,GETDATE()))
GROUP BY ACCT_NO
SELECT ACCT_NO
,SUM(PMT_AMT) AS TOTAL_PRINCIPAL_PAID
,NULL AS TOTAL_INTEREST_PAID
,NULL AS TOTAL_PRINCIPAL_PAID_YTD
,NULL AS TOTAL_INTEREST_PAID_YTD
FROM #a
WHERE PMT_TYPE = 'P'
GROUP BY ACCT_NO
UNION
SELECT ACCT_NO
,NULL AS TOTAL_PRINCIPAL_PAID
,SUM(PMT_AMT) AS TOTAL_INTEREST_PAID
,NULL AS TOTAL_PRINCIPAL_PAID_YTD
,NULL AS TOTAL_INTEREST_PAID_YTD
FROM #a
WHERE PMT_TYPE = 'I'
GROUP BY ACCT_NO
UNION
SELECT ACCT_NO
,NULL AS TOTAL_PRINCIPAL_PAID
,NULL AS TOTAL_INTEREST_PAID
,SUM(PMT_AMT) AS TOTAL_PRINCIPAL_PAID_YTD
,NULL AS TOTAL_INTEREST_PAID_YTD
FROM #a
WHERE PMT_TYPE = 'P'
AND DATEPART(year,[PMT_DATE])=DATEPART(year,DATEADD(year,-1,GETDATE()))
GROUP BY ACCT_NO
UNION
SELECT ACCT_NO
,NULL AS TOTAL_PRINCIPAL_PAID
,NULL AS TOTAL_INTEREST_PAID
,NULL AS TOTAL_PRINCIPAL_PAID_YTD
,SUM(PMT_AMT) AS TOTAL_INTEREST_PAID_YTD
FROM #a
WHERE PMT_TYPE = 'I'
AND DATEPART(year,[PMT_DATE])=DATEPART(year,DATEADD(year,-1,GETDATE()))
GROUP BY ACCT_NO
-- Query to put this all these 4 columns on the same line, ending up with 3 lines.
DROP TABLE #aTry the below query
CREATE TABLE #a
PMT_ID INT IDENTITY(1,1),ACCT_NO INT, PMT_TYPE CHAR(1), PMT_AMT MONEY, PMT_DATE DATE)
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 1, 'P', 450, '2012-09-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 1, 'I', 100, '2012-09-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 1, 'P', 450, '2012-10-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 1, 'I', 100, '2012-11-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 1, 'P', 450, '2012-12-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 1, 'I', 100, '2012-12-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 2, 'P', 351, '2012-09-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 2, 'I', 102, '2012-09-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 2, 'P', 352, '2012-10-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 2, 'I', 102, '2012-11-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 2, 'P', 353, '2012-12-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 2, 'I', 102, '2012-12-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 3, 'P', 850, '2013-09-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 3, 'I', 200, '2013-09-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 3, 'P', 880, '2013-10-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 3, 'I', 201, '2013-11-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 3, 'P', 855, '2013-12-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 3, 'I', 203, '2013-12-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 1, 'P', 451, '2013-09-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 1, 'I', 99, '2013-09-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 1, 'P', 451, '2013-10-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 1, 'I', 99, '2013-11-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 1, 'P', 451, '2013-12-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 1, 'I', 99, '2013-12-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 2, 'P', 352, '2013-09-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 2, 'I', 101, '2013-09-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 2, 'P', 353, '2013-10-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 2, 'I', 103, '2013-11-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 2, 'P', 354, '2013-12-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 2, 'I', 103, '2013-12-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 3, 'P', 851, '2013-09-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 3, 'I', 199, '2013-09-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 3, 'P', 881, '2013-10-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 3, 'I', 201, '2013-11-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 3, 'P', 854, '2013-12-01')
INSERT INTO #a ( ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE ) VALUES ( 3, 'I', 205, '2013-12-01')
SELECT PMT_ID, ACCT_NO, PMT_TYPE, PMT_AMT, PMT_DATE
FROM #a
SELECT ACCT_NO, SUM(PMT_AMT) TOT_PRINCIPAL_PAID
FROM #a
WHERE PMT_TYPE = 'P'
GROUP BY ACCT_NO
SELECT ACCT_NO, SUM(PMT_AMT) TOTAL_INTEREST_PAID
FROM #a
WHERE PMT_TYPE = 'I'
GROUP BY ACCT_NO
SELECT ACCT_NO, SUM(PMT_AMT) TOTAL_PRINCIPAL_PAID_YTD
FROM #a
WHERE PMT_TYPE = 'P'
AND DATEPART(year,[PMT_DATE])=DATEPART(year,DATEADD(year,-1,GETDATE()))
GROUP BY ACCT_NO
SELECT ACCT_NO, SUM(PMT_AMT) TOTAL_INTEREST_PAID_YTD
FROM #a
WHERE PMT_TYPE = 'I'
AND DATEPART(year,[PMT_DATE])=DATEPART(year,DATEADD(year,-1,GETDATE()))
GROUP BY ACCT_NO
select
T123.ANO,
SUM(TOTAL_PRINCIPAL_PAID) TOTAL_PRINCIPAL_PAID,
SUM(TOTAL_INTEREST_PAID) TOTAL_INTEREST_PAID ,
SUM(TOTAL_PRINCIPAL_PAID_YTD) TOTAL_PRINCIPAL_PAID_YTD,
SUM(TOTAL_INTEREST_PAID_YTD) TOTAL_INTEREST_PAID_YTD
from
SELECT ACCT_NO ANO
,SUM(PMT_AMT) AS TOTAL_PRINCIPAL_PAID
,NULL AS TOTAL_INTEREST_PAID
,NULL AS TOTAL_PRINCIPAL_PAID_YTD
,NULL AS TOTAL_INTEREST_PAID_YTD
FROM #a
WHERE PMT_TYPE = 'P'
GROUP BY ACCT_NO
UNION
SELECT ACCT_NO
,NULL AS TOTAL_PRINCIPAL_PAID
,SUM(PMT_AMT) AS TOTAL_INTEREST_PAID
,NULL AS TOTAL_PRINCIPAL_PAID_YTD
,NULL AS TOTAL_INTEREST_PAID_YTD
FROM #a
WHERE PMT_TYPE = 'I'
GROUP BY ACCT_NO
UNION
SELECT ACCT_NO
,NULL AS TOTAL_PRINCIPAL_PAID
,NULL AS TOTAL_INTEREST_PAID
,SUM(PMT_AMT) AS TOTAL_PRINCIPAL_PAID_YTD
,NULL AS TOTAL_INTEREST_PAID_YTD
FROM #a
WHERE PMT_TYPE = 'P'
AND DATEPART(year,[PMT_DATE])=DATEPART(year,DATEADD(year,-1,GETDATE()))
GROUP BY ACCT_NO
UNION
SELECT ACCT_NO
,NULL AS TOTAL_PRINCIPAL_PAID
,NULL AS TOTAL_INTEREST_PAID
,NULL AS TOTAL_PRINCIPAL_PAID_YTD
,SUM(PMT_AMT) AS TOTAL_INTEREST_PAID_YTD
FROM #a
WHERE PMT_TYPE = 'I'
AND DATEPART(year,[PMT_DATE])=DATEPART(year,DATEADD(year,-1,GETDATE()))
GROUP BY ACCT_NO)T123
Group by T123.ANO
DROP TABLE #a -
Problems with sending emails from my Blackberry BIS account - all on one line
I am using a BB Storm 9500 and have been trying to use the BIS email account.
However, whenever I reply or forward emails from my device, the email comes out all on one line regardless of the punctuation I put in.
My signature also appears on one line despite having formatted it differently.
I've seen some post on this problem before but I wondered whether anyone has resolved it now. It's a pain because when responding to work emails it looks completely unprofessional.
Cheers
TJEanyone try it? any use?
dc -
When exporting XML files, I get forced line breaks before and after my xmltag
hi everybody,
as I said, i do a javascritp that exports xml files. First I clean up my text by removing every invisible characters with app.findpreferences. Nevertheless, my xml files is almost well formed beacause i got before and after each xmltag a forced line break. Somebody could explain to me why ?
I don't use prettyIndent and prettyPrinting .
Best regards
Américo Pintohi everybody,
as I said, i do a javascritp that exports xml files. First I clean up my text by removing every invisible characters with app.findpreferences. Nevertheless, my xml files is almost well formed beacause i got before and after each xmltag a forced line break. Somebody could explain to me why ?
I don't use prettyIndent and prettyPrinting .
Best regards
Américo Pinto -
How to pass an xml file as a command line argument
hi,
i would like to know how to pass xml tags (not an xml file) while running java command. i have already compiled the code and i have a .class file generated. i need to pass this argument in the java command because i am calling a web service which requires an xml as parameter to it.
to be precise the java code contains soap request and i need to pass xml at run time.
pl do reply if you have any ideas or solutions...
Thanks in advance,
gnsinhydI got the answer myself
Got the answer myself. I needed the ActionServlet Context in the ActionClass. This is what I have done...
It works.
LogonAction.class
Code:
InputStream is = getServlet().getServletContext().getResourceAsStream("/WEB-INF/conf/menu.xml");
XMLMenuBuilder.java
Code:
Document document = builder.parse(is);
Thanks -
PBDOM : Exporting to XML file gives a single line
I've been starting developing with PowerBuilder 12.5 a few weeks ago. I had to write some XML files, so I got familiar with the PBDOM library.
I can build a lot of different things, it's very nice, but one thing still bothers me :
In the output file, the whole XML is written on a single line.
I use the SaveDocument function.
For example, here is some code :
PBDOM_Document doc
PBDOM_Element noderoot, node1, node11, node12
doc = CREATE PBDOM_Document
doc.NewDocument("NodeRoot")
noderoot = doc.GetRootElement()
node1 = CREATE PBDOM_Element
node1.SetName("Node1")
noderoot.AddContent(node1)
node1.SetAttribute("Attr", "AttrValue")
node11 = CREATE PBDOM_Element
node11.SetName("Node11")
node11.AddContent("Here is a value")
node1.AddContent(node11)
node12 = CREATE PBDOM_ELEMENT
node12.SetName("Node12")
node12.AddContent("Here is another value")
node1.AddContent(node12)
doc.SaveDocument("myDoc.xml")
Here is the result when I open it with notepad++
<NodeRoot><Node1 Attr="AttrValue"><Node11>Here is a value</Node11><Node12>Here is another value</Node12></Node1></NodeRoot>
Whereas I wanted :
<NodeRoot> <Node1 Attr="AttrValue"> <Node11>Here is a value</Node11> <Node12>Here is another value</Node12> </Node1> </NodeRoot>
With the notepad++ XML tools plugin, I can use the "pretty print" function to get this nice representation. But I would like my file to be formatted this way from the beginning. I noticed that the "line ending" was set to UNIX format (indicator on bottom right of the window), but I'm working on Windows. When I use the menu to convert it to Windows format (CR+LF), it changes this indicator, but the code stays on one single line.
Is there a way to tell PBDOM to export the XML file with a nice output ?
Thank you !
Notes :
- Opening the XML file with Internet Explorer or Google Chrome gives me a nice vizualisation, with indentation, line breaks...
- Adding a <?xml version="1.0" encoding="ISO-8859-1" ?> does not help (I've been doing it while exporting some more complex files, but I still get the output on one line...)Here is a very simple powerbuilder example. It uses MSXML instead of PBDOM. See my comments for hints how to use it with PBDOM.
oleobject lole_dom, lole_root, lole_element1, lole_element11, lole_element12
oleobject lole_Writer, lole_saxreader
string ls_result
// build DOM (you don't need this if you use PBDOM)
lole_dom = create oleobject
lole_dom.ConnectToNewObject ("Msxml2.DOMDocument")
lole_root = lole_dom.CreateElement ("NodeRoot")
lole_dom.documentElement = lole_root
lole_element1 = lole_dom.CreateElement("Node1")
lole_root.AppendChild(lole_element1)
lole_element1.SetAttribute("Attr", "AttrValue")
lole_element11 = lole_dom.CreateElement("Node11")
lole_element11.AppendChild (lole_dom.CreateTextNode("Here is a value"))
lole_element1.AppendChild(lole_element11)
lole_element12 = lole_dom.CreateElement("Node12")
lole_element12.AppendChild (lole_dom.CreateTextNode("Here is another value"))
lole_element1.AppendChild(lole_element12)
// this saves the DOM without formatting
//lole_dom.save ("d:\testxml.xml")
// this part is for formating
lole_Writer = create oleobject
lole_saxreader = create oleobject
lole_Writer.ConnectToNewObject ("MSXML2.MXXMLWriter")
lole_saxreader.ConnectToNewObject ("MSXML2.SAXXMLReader")
lole_Writer.omitXMLDeclaration = True
lole_Writer.indent = True
lole_saxreader.contentHandler = lole_Writer
// instead of DOM you can also put a XML string to parser: lole_saxreader.parse ("<node>...</node>")
// so you can also use the PBDOM output directly
lole_saxreader.parse (lole_dom)
// here is your formatted output
ls_Result = lole_Writer.output
MessageBox ("", ls_result)
lole_writer.Disconnectobject( )
lole_saxreader.Disconnectobject( )
lole_dom.Disconnectobject( )
DESTROY lole_writer
DESTROY lole_saxreader
DESTROY lole_dom -
I have to print two labels using single XML file.Error:Only one top level e
Hi,
I have to print two labels using single XML file. But its giving error:
[Error] Error -1072896683 - Line: 38 Pos: 2 Error: Only one top level element is allowed in an XML document.
Below is my XMl file:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE labels SYSTEM "label.dtd">
<labels FORMAT="lib://FRD/PurchasedDoor.btw" PRINTERNAME="IBM 6700-R80 (300 dpi)" _QUANTITY="1">
<label>
<variable name= "Color">AUTUMN</variable>
<variable name= "Special_Message_Attribute">MSG*</variable>
<variable name= "Special_Message">This is special Message Label</variable>
<variable name= "Model"></variable>
<variable name= "Build_Date">09-APR-12</variable>
<variable name= "Assy_Cart"></variable>
<variable name= "Assy_Slot"></variable>
<variable name= "Finish_Cart"></variable>
<variable name= "Finish_Slot"></variable>
<variable name= "Serial_Number">1945.1.1.2-1</variable>
<variable name= "Serial_Number_Barcode">1945.1.1.2-1</variable>
<variable name= "Specie">BIRCH</variable>
<variable name= "Truck_Group"></variable>
<variable name= "Label_Sequence_No">1</variable>
<variable name= "WIP_Cart"></variable>
<variable name= "WIP_Slot"></variable>
<variable name= "Cabinet_Sequence_No">110</variable>
<variable name= "JC"></variable>
<variable name= "Thickness"> </variable>
<variable name= "Width"> </variable>
<variable name= "Length"> </variable>
<variable name= "Overlay"></variable>
<variable name= "Options">B30</variable>
<variable name= "Profile_No"></variable>
<variable name= "Door_Style">NEWBERRY</variable>
<variable name= "Glaze"></variable>
<variable name= "Shape"></variable>
<variable name= "Glass"></variable>
<variable name= "Hinge_Side"></variable>
<variable name= "Hinge_Type"></variable>
<variable name= "EGE"></variable>
</label>
<labels FORMAT="lib://FRD/SpecialMessage.btw" PRINTERNAME="IBM 6700-R80 (300 dpi)" _QUANTITY="1">
<label>
<variable name= "Serial_Number">1945.1.1.2-1</variable>
<variable name= "Special_Message">This is special Message Label</variable>
<variable name= "Cabinet_Sequence_No">110</variable>
</label>
</labels>
Please suggest.>
XML can only have one root element per file.
>
from XML Document: The Root Element -
Product Name: Hp Pavilion all in one I don't know the product number.
Operating System: Windows 7 64-bit
It says insert disc each time
No upgrades before the issueHi,
The following procedure will test if your PC can start from a bootable disc in the CD/DVD drive - the advantage of trying this is that it will rule out any possible Windows driver error as the CD/DVD drive is under the control of the Bios when starting the PC. So if you find that the PC will not boot from the CD or DVD, then it's almost certainly a Hardware fault in the optical drive itself and it will need to be replaced.
Using another PC to create a Windows 7 Rescue CD and DVD. Download the ISO from the link below.
Windows 7 64bit
You need use an application such as ImgBurn to correctly burn the ISO to a CD and then also burn it to a DVD - a guide on using ImgBurn to write an ISO to a disc is Here. Once created, insert the CD and then restart the PC and see if it boots from this disc - if it does, let the first screen come up ( this will show repair options etc ) then just remove the CD, insert the DVD and restart the PC again to see if it will also boot from this disc. If the PC will not boot from the CD, it may just load straight into Windows, in which case, just remove the CD, insert the DVD and restart to see if it will boot from this disc.
Let me know.
Regards,
DP-K
****Click the White thumb to say thanks****
****Please mark Accept As Solution if it solves your problem****
****I don't work for HP****
Microsoft MVP - Windows Experience -
Utility to send text file over GPIB, one line at a time?
We are developing instrumentation that receives data and commmands over GPIB as plain text, and returns them as well. I'd like to create GPIB "batch" files and send them over the bus, one line at a time, so I can debug the instruments' behavior. I'd also like to be able to read back responses, one line at a time.
Is there such a utility? I've got our programmer working on something like this, but I'd hate to have him re-invent an existing wheel.
Thanks!Apart from NI-SPY, I have not heard of such a utility. This may be simple to implement using proper termination. If the instrument is capable of sending line feeds or carriage return, you should be able to easily create a document. Also, using IBWRTF, you could write the ASCII file (containing the termination characters) to the bus. Depending on how you have your timeouts specified, this may be ideal.
Alternately, if you read a static amount of data, you could IBRD chunks of data. the result may need editing for broken words at the end of a line but would achieve such a result.
Ryan Mosley
National Instruments, Applications Engineer
http://www.ni.com/exchange -
Why does my BIS emails always appear on one line?
I use a Blackberry Storm 9500 and have started using the BIS email account but when I reply (or reply to all or forward) emails the text I send always appears on one line regardless of the punctuation I use.
This includes my email signature.
Has anyone resolved this issue?
Thanks
TJELook through the email account that is your default for sending. Make sure that you have set the correct outgoing mail server.
-
Why am I not able to select just one line on certain pages of Adobe reader?
I can select and highlight just one line on most pages of a PDF in Adobe Reader 10.1.2 on a Mac OS X, but for some reason there are a few pages which make me select three or four lines. Why is this?
1. Was Lion on the machine and trying to downgrade?
2. If so this might be an issue. Newer machines are done for current OSX.
3. If you have Lion on your machine try to install Snow Leopard on another partition or portable HD
4. After you format and install SL on the other partition or drive Try to boot from this machine retarting and holding the Option key at boot up.
5. See if that work.
This is a trial and error way but Mountain Lion is right around the corner and Snow Leopard is 2+ yrs old.
Brian -
Will my bill increase if I cancel all but one line on my family plan?
I would like to keep one line (a smartphone) on my family plan and cancel the other 3 lines (2 smartphones and one basic phone). The contract is up on the 3 lines I want to cancel at the end of October, but the contract isn't up for the one line I want to keep until December. If I cancel all but the one, will my bill go up/change to a single personal plan on the single line for the remainder of its contract length? I tried calling customer service and doing the online chat and couldn't get through to talk to an actual person. I'm getting ready to just jump ship and not keep any lines at this point.
Don't jump, rilobilly. We don't want to see you go! We do offer a Single Line Plan http://vz.to/1d0wrWV for only $60 per month with 2GB if you do decide to leave only one smartphone on your plan. What plan do you have now? What has you wanting to cancel so many of your lines? We want to help.
JenniferH_VZW
Follow us on Twitter www.twitter.com/vzwsupport -
Write to Text File.vi Output file all but first line start with tab
The attached PNG shows the code used to build up concatenated strings into a string array for the first four lines, thence to a string Array, to Spreadsheet String.vi and, finally, the use of Write to Text File.vi
The lower right corner shows the result loaded into a spreadsheet. Note the 3 blank entries marked by a filled red rectangle. Examination of hidden characters shows there is a tab at the beginning of lines 2, 3 and 4.
There is no tab shown in the code. How do those tabs get there? How do I stop them?
I have tried with the option "Convert EOL" both on and off with no difference.
The Help states that an OS-dependent EOL character is appended to each line. I can't imagine the Windows EOL character includes a tab.
Solved!
Go to Solution.
Attachments:
Tab Mystery.PNG 29 KBwildcatherder wrote:
I am still puzzled as to why those additional tabs were added by Array to Spreadsheet String. I'm holding in my hand a printout of an old LabVIEW 8 program with that construction, which is known to work properly.
Makes complete sense when you look at your code. You build a string, including an end-of-line character, and put that string into an array. Then, when you run it through Array to Spreadsheet String, it puts a tab after every array element, and new line at the end of each row in the array. The first element of your array contains a new line but Array to Spreadsheet String doesn't know about it; it still inserts a tab between that array element and the next one, giving you the tabs. -
Why won't an hp F4480 all-in-one printer install on an imac running mavericks?
I researched this printer before I tried to install it. According to both the Apple and HP websites, the driver for it is already included in Mavericks, and no driver downloads were necessary. I followed the instructions I found on the HP site to install the printer with a USB connection, and the imac picked up the printer as an HP 4400 series, but in spite of that the printer was not listed in the Add menu where it was supposed to be. I tried using the generic printer driver, and it did not work when I tried to send a print job. There was no error message, but the document sinply never made it to the print queue. I had to reset the printing settings to remove the printer since it wasn't working. Has anyone else had this problem? Is there a solution?
This is my first Mac, and I just set it up, so I am new to all of this. If there is something I am not understanding, I apologize.
If I go to the app store and check for updates, it shows that no updates are available. There is a list of updates that were installed yesterday, the day I turned it on, but some of them have an x next them. Safari, itunes, ibooks and digital raw have the x, while garageband, pages, numbers and keynote have icons next to them in the list of updates. Does that mean the ones with the x did not really update? Would that somehow affect whether or not the HP driver I need would show up when I install the printer? As far as I can tell the OS is updated. I checked the version in system information and it is 10.9.2.
Maybe you are looking for
-
Model Name: iMac Model Identifier: iMac12,1 Processor Name: Intel Core i5 I reset my apple ID password here on the website, but my computer isn't recognizing my new password. what should I do? I just need to update my adobe flash player but it ke
-
Screen is dead, and restoring isn't fixing it
A few days after updating my 1st gen iPod touch to 3.1.3, I was suddenly given a white screen. This was followed by a black screen after reseting it. After restoring my iPod, the screen will not turn on at all but the iPod will behave as if it is in
-
Migration of table from sql server to oracle
Hi, I had to export few tables from SQL Server to Oracle. After the migration, I am checking to see all the tables in Oracle that have been migrated from Sql Server. I am executing select * from tab; and am seeing all the the tables (including those
-
I really needed this one implementation of tree table on mvc
hi there i'm burning my as* reading some tutorials about tree table and all i found was a complex codes i just wanna know if you know some codes of a simple tree table where in the content of a tree or table was hardcoded and there are no thingy effe
-
Command line build and source control (svn)
Using Flash Builder, what should be checked into source control to enable a command line build without any user interaction? Just checking in all the source directories is apparently not enough - as far as I can tell the individual projects have to b