RH9 and XML output - passing build tags
Hi,
I've just upgraded to RH9 and have found out that the XML output options are different from RH7 - the RH7 Export Handler "Export Topics to XHTML" has disappeared and the other options no longer allow you to retain conditional build tags in the XML output. Instead, the tag is removed (if tag is to be included in compile), leaving the content as is, or the tag and content is removed (if tag excluded).
As some background, we used the RH7 Export Handler "Export Topics to XHTML" option to strip down the size of our localized content - included tags stay in the XML,exclude tags actually remove content. The XML is reimported into a translatable project where the retained tags (e.g., UserGuide or Help) are used to restrict content to Help or generated User Guide after translation.
Has anyone any experience of this area of RH9? Woulld you know if this is a bug or by design, or if a workaround is possible? Are there other ways of cutting down projects for translation while having build tag control in your localized versions?
This breaks my solution for cutting down UK/US help content big time - this has saved a lot on localization costs!
Many thanks
Andy Capstick
[email protected]
Hi, you can FOR XML PATH for a finer degree of control over your XML. Use the @ symbol to create attributes. Here's a simple example:
DECLARE @t TABLE ( rowId INT IDENTITY PRIMARY KEY, [address] VARCHAR(50), city VARCHAR(30), floor INT, suite INT, doorType VARCHAR(20) )
INSERT INTO @t VALUES
( '123 Fake St', 'Springfield', 10, 512, 'Metal' )
SELECT
[address] AS "Address",
city AS City,
[floor] AS "Location/@Floor",
suite AS "Location/@Suite",
doorType AS "Location/@DoorType"
FROM @t
FOR XML PATH ('Company'), ROOT ('Companies'), ELEMENTS;
Similar Messages
-
Can RoboHelp 7 output topics as XML (.xml files) ?
We are researching upgrading to RoboHelp 7 from our RoboHelp
HTML 2002 versions. We skipped the X-series upgrades, but I recall
reading that the X-series supported XML in some way. I downloaded
the RH7 trial version and could not find anything in the Help about
XML. Then it seems that suddenly an XML Output icon appeared in the
Single Source Layouts pane. It was not there previously. I then
could generate xhtml (.htm) files.
We called sales who didn't seem to know and said we'd need a
valid license to ask tech support.
Can someone enlighten me about the history of the X-series
and XML output, and what is actually possible for XML from RH7? And
what you need to do to get the XML Output to appear in the Single
Source Layoutspane? XML Output is not covered anywhere I found in
help or knowledge base, but it seems so huge a deal that it makes
me think I must be missing something.
Thanks for your help.Hi Peter
Thanks for your help. In the Single Source Layouts pane, I
clicked create Layout, and selected XML Output, and it now appears
in the Single Source Layouts screen. Still have some questions.
1\ Do you know any of the history of what kind of XML support
was offered in the X-series, and if version 7 offers less, more, or
the same support?
2\ Any idea why there is NOTHING mentioned in the RoboHelp
Help if you search using XML or XML output? Even more curious is
when I click the Help button from the XML Output Options box, I do
find a topic called XML Output Options. I wonder why their main
Search tool doesn't find this...
We were hoping to migrate to XML using XMetaL, but Mgt is
balking due to the time and costs involved in conversion and
translation issues. Which is why we may need to upgrade RH2002 to
RH7, so our legacy docs remain pretty much intact. But at the same
time, we want to know what the current RH XML capabilites are, and
are wondering what their plans are for the future, like, will they
offer real XML out to the current major tech writing standard,
DITA. We hope to start authoring new docs only then using XMetal so
we don't take the conversion/translation memory hit.
So yes, our XML questions are deliberate. -
Topic and content level conditional build tags
What is the difference between a topic level and a content
level conditional build tag? Why would you select one over the
other? How do you select one over the other.First let me point out that the same conditional build tag
can be applied at either the topic level or the content level. It
sounds like you may be thinking that you have to create a tag as
for either the content or topic level.
Apply a tag at the topic level when you want the entire topic
excluded from a certain output. Do this by right-clicking on a
topic in your Project Manager, going to Apply Conditional Build
Tag, and selecting the tag.
Apply a tag at the content level (text, images) when you want
the topic to be included but want specific content to be excluded
from a certain output. Apply a tag at this level by selecting the
text and/or images that you want to apply the tag to,
right-clicking, going to Apply Conditional Build Tag, and picking
the tag.
Note that you wouldn't use a tag at the topic level on a
topic where you have used that same tag at the content level, and
vice versa.
Generally, the idea of build tags is to set an output to
exclude certain tags, but you can also set outputs to include tags
instead, which then excludes all other tags.
--Ben -
XML output with multiple tags in one line
I have not done much XML exporting with SQL. Previously I had just been ending my SQL queries with
FOR XML RAW ('Company'), ROOT ('Companies'), ELEMENTS;
and it formatted my query nicely in an XML output. That put every column name as a tag and the cell data within the tag.
However, now the criteria has changed on me. I need to create a tag with multiple sub tags in it.
Example: <Location Floor="10" Suite="512" DoorType="Metal">
But I'll still need other tags to be normal in the XML output such as
<Address>123 Fake St</Address>
<City>Springfield</City>
<Location Floor="10" Suite="512" DoorType="Metal">
Is there any way to get this XML mixed in the output like above?
Thank you for any help.Hi, you can FOR XML PATH for a finer degree of control over your XML. Use the @ symbol to create attributes. Here's a simple example:
DECLARE @t TABLE ( rowId INT IDENTITY PRIMARY KEY, [address] VARCHAR(50), city VARCHAR(30), floor INT, suite INT, doorType VARCHAR(20) )
INSERT INTO @t VALUES
( '123 Fake St', 'Springfield', 10, 512, 'Metal' )
SELECT
[address] AS "Address",
city AS City,
[floor] AS "Location/@Floor",
suite AS "Location/@Suite",
doorType AS "Location/@DoorType"
FROM @t
FOR XML PATH ('Company'), ROOT ('Companies'), ELEMENTS; -
Encapsulating Data in XML Output in CDATA tags
Hi,
I have a simple pdf fillable form that I created in LiveCycle Designer ES that saves/submits form data as XML for parsing into a database. The database parser requires all form data to be encapsulated into CDATA tags inside the XML fieldnames or it will not process it. Can anyone give some pointers to force the XML output to encapsulate the data inside CDATA tags within the XML fieldnames in my output XML file? Thanks.
DanHi Dan,
Can you post a sample of what you want the xml to look like. If I understand correctly, it sounds like a very strange parser. I would imagine you would have to preprocess the xml on the server.
Regards
Bruce -
Conditional build tags disappeared
Hi All,
For info, we are using Tech Comms Suite 3.5 with RoboHelp 9.
We have an interesting problem in that some of our conditional build tags have somehow gone missing! We are unable to select them to apply to content/topics for selection, however where the tags have been applied the tooltip showing the condition is displayed when you hover the cursor over the 'conditioned' content. When we look at the tags applied in the topic properties dialog box, the tag does not appear.
I'm hoping that someone might have experienced this and can point us in the right direction please? Does anyone know which RoboHelp file holds all the conditional build tag information? Does anyone know an ideal solution that does not entail us creating replacement tags then reapplying them to the relevant information?
Thanks all for your help.
LillibetFrom my recent experiments with modifying .apj files and what not behind the back of RH9 I can say that this also happened to me, especially in situations where I deleted the .cdb and the .xpj file to start over from opening the .hhp file. Anyway, you might look into the file rhbuildtag.apj and examine whether your build tags are in there.
If not, just create them either in an editor if you know the syntax
<?xml version="1.0" encoding="utf-8"?>
<rhpml majorversion="4" minorversion="0">
<buildtags>
<buildtag>
<name>BUILDTAG_1</name>
<colorref>12632256</colorref>
<comments/>
</buildtag>
<buildtag>
<name>BUILDTAG_2</name>
<colorref>16711680</colorref>
<comments/>
</buildtag>
<buildtag>
<name>Online</name>
<colorref>65280</colorref>
<comments/>
</buildtag>
<buildtag>
<name>Print</name>
<colorref>255</colorref>
<comments/>
</buildtag>
</buildtags>
</rhpml>
Or you may just recreate them from the GUI.
Christoph -
Text coded with conditional build tags still showing up in TOC even if tag is "excluded"
I am using TCS2, Windows XP.
After creating a book in FM and coding with conditional build tags, I imported into RH. When I generate, I have the output tag set:
NOT NoOUtput AND NOT Internal AND NOT Print - I want to generate my External, Online Help webhelp. And it works like a charm. Except that:
In the TOC, I can still see headings for things that are "internal" - when I click on it, they don't go anywhere... but I don't want them to appear in the TOC!!
It seems to be excluded from the index and the search. I am sure I am just missing a step or something...
In looking through the forums I found this... http://forums.adobe.com/message/751847#751847 -- I don't know if it is still applicable since it seems to be referring to RH6 (which is a bit away from RH 8 that I am using)...
Any help is appreciated!
TIA,
AdrianaHi Daggins,
Thanks - that is good info to have. But as we all agree, that does take away from the point of single-sourcing.
You aren't misunderstsanding exactly... I am doing all my conditional tagging in FM and it works like a charm in terms of the PDFs that I generate from FM, and even the conditionally tagged text in RH shows/hides correctly. The issue is I am also importing my index and TOC from FM... and even if I have an entire file in FM tagged as conditional (all the text is tagged as conditional, I don't know if you can tag a file as conditional), the file name as a heading it still appears in the RH TOC. There is no text... but in my view it shouldn't appear in the TOC either (it looks like just a broken link when I generate my online help) - this is not ideal. -
Conditional Build Tags...weird behavior?
If I apply a conditional build tag to a topic from the TOC
tab, the topic gets included in the output even if I have specified
that tag to be excluded.
However, if I apply the same conditional build tag to a topic
from the Project tab, then the topic gets excluded (as expected)
from the output because I have specified that tag to be excluded.
Is this inconsistency in behavior by design? I looked at the
RoboHelp Help, and it appears there is nothing wrong with adding
conditional build tags to topics from the TOC tab.
Can someone shed light on this? I am using Adobe RoboHelp
HTML 6, Build 099.
Thanks,
K
P.S.: It appears RoboHelp is completely ignoring the
conditional build tags that I am adding to topics from the TOC tab.
If I see these tagged topics from the Project tab or the Topics
tab, there is no color shading for these topics. The color shading
for the topics shows only if I tag the topics from the Project Tab
or the Topics tab.Here's a copy-paste from the RH Help...It didn't explain
things the way you did. :-(
Applying conditional build tags to Table of Contents
Use conditional build tags to design and create multiple
versions of your project from a single set of source files. After
creating the conditional build tag, you can apply it to both books
and pages in the TOC for maximum control over the final results.
From the TOC view, you can apply conditional build tags to Topics
also. When you generate a project, you can define conditional build
expressions to include or exclude the book or page in the TOC, from
the output.
Show Me
Use this procedure to apply conditional build tags to books
and pages in the TOC. When you exclude such a tag from your output,
the book or page in the TOC, is not included in the output.
To apply a conditional build tag to a book or page in the
TOC:
Option 1:
Create the conditional build tag.
Click the TOC tab to view the Topic list.
Select a book or page to which you want to apply a
conditional build tag.
Right-click and select Apply Conditional Build Tag, and
choose the Tag you want to apply. The tag is applied to the
selected book or page.
When you generate the project, you can define conditional
build expressions to include or exclude the tagged books or pages
in the TOC, from the output. (A TOC to which a tag has not been
applied, will be included in the output.)
Option 2:
Create the conditional build tag.
Click the TOC tab to view the Topic list.
Select the book or page to which you want to apply a
conditional build tag.
From the Format menu, select Apply Conditional Build Tag, and
then choose a tag. The conditional build tag is applied to the
selected book or page in the TOC.
When you generate the project, you can define conditional
build expressions to include or exclude tagged books or pages in
the TOC, from the output. (A TOC to which a tag has not been
applied, will be included in the output.)
To apply multiple tags:
From the Format menu, select Apply Conditional Build Tag, and
choose New/Multiple. The Conditional Build Tag dialog box appears.
Click Check All to apply all the tags, or select specific
tags to apply to the book or page in the TOC.
Click OK.
If your project is under version control, these steps may
include more options. Click here for more information.
Tips:
You can also apply conditional build tags to topics, topic
content, folders, and Index.
To verify the tags applied to topics, topic areas, TOC, and
Index, or rename a tag, or change the color of a tag, click the
Project tab, expand the Conditional Build Tags folder, and
double-click the tag. You can make the desired changes in the
Conditional Build Tag Properties dialog box.
Ensure that you remove textual references to the excluded
book or page, such as text links, which refer to the tagged book or
page in the TOC. (Hotspots are not active for excluded topics.)
If you generate Printed Documentation, TOC with Conditional
Build tags are not excluded from printing. -
How to Create XML output for EFT payments.....?
I am new to creating eText templates. My Understanding is to get XML output then build a template based on the XML output. Right or wrong I am not totally sure. Either way, here is what I need to accomplish and I am not sure where to start.
(We are in R12....)
Select EFT payments and create EFT output to send to the bank. I am looking for some guidence. Is there a generic payment program I can relate to an eft payment bank to generate the xml output? Is there a template already built for EFT payments? Does anyone out there have a solution that they are willing to share? Any guidence would be greatly appreciated.Figured this out on our own
-
Regarding the rowset and row tags in the XML output
Hi,
We generated an XML file using dataset of type SQL query.The output is including additional tags
<ROWSET> and <ROW> tags.How to disable them from appearing in the XML output.Hi,
Iam not using the Datamodel of data template type.If we use the data template we can disable the rowtags by setting the property mentioned by you.But we get the data template name and the query name included in the output.My requirement is to disable the extratags.
Can u please provide inputs on how to disable the datatemplate name and the query name tags in the output when we use datatemplate.Thank you. -
I created well formatted xml having html tags, MathML code and Latex code inside
XML with sample latex
<question>
<p> 8. In this problem, <Image style="vertical-align: -9pt" title="5a\frac{7b}{3}" alt="5a\frac{7b}{3}" href="http://www.snapwiz.com/cgi-bin/mathtex.cgi?%205a%5Cfrac%7B7b%7D%7B3%7D%0A"></Image> and <Image href="http://www.snapwiz.com/cgi-bin/mathtex.cgi?%207b%5Cfrac%7B5a%7D%7B3%7D" style="vertical-align: -9pt" title="7b\frac{5a}{3}" alt="7b\frac{5a}{3}"> </Image>are both mixed numbers, like <Image src="http://www.snapwiz.com/cgi-bin/mathtex.cgi?%203%20%5Cfrac%7B1%7D%7B2%7D%20=%203.5" style="vertical-align: -9pt" title="3 \frac{1}{2} = 3.5" alt="3 \frac{1}{2} = 3.5"></Image>. The expression <Image style="vertical-align: -9pt" title="5a \frac{7b}{3} \ \times 7b \frac{5a}{3}" alt="5a \frac{7b}{3} \ \times 7b \frac{5a}{3}" href="http://www.snapwiz.com/cgi-bin/mathtex.cgi?%205a%20%5Cfrac%7B7b%7D%7B3%7D%20%5C%20%5Ctimes %207b%20%5Cfrac%7B5a%7D%7B3%7D"> </Image>is equal to which of the following choices? </p>
</question>
XML with sample html tags
<p>4. Examine the expression 3<i>k</i><sup>2</sup> + 6<i>k</i> - 5 + 6<i>k</i><sup>2</sup> + 2.</p><p>When it is simplified, which of the following is the equivalent expression?</p>
XML with sample MathML tags
<p>5. Find the vertex of the parabola associated with the quadratic function <math xmlns="http://www.w3.org/1998/Math/MathML"><mi>y</mi><mo> </mo><mo>=</mo><mo> </mo><mo>-</mo><msup><mi>x</mi><mn>2</mn></msup><mo> </mo><mo>+</mo><mo> </mo><mn>10</mn><mi>x</mi><mo> </mo><mo>+</mo><mo> </mo><mn>4</mn></math></p>
<math xmlns="http://www.w3.org/1998/Math/MathML"><mfenced><mrow><mo>-</mo><mn>5</mn><mo>,</mo><mo> </mo><mn>69</mn></mrow></mfenced></math><br>
<math xmlns="http://www.w3.org/1998/Math/MathML"><mfenced><mrow><mn>5</mn><mo>,</mo><mo> </mo><mn>29</mn></mrow></mfenced></math><br>
<math xmlns="http://www.w3.org/1998/Math/MathML"><mfenced><mrow><mn>5</mn><mo>,</mo><mo> </mo><mn>69</mn></mrow></mfenced></math><br>
<math xmlns="http://www.w3.org/1998/Math/MathML"><mfenced><mrow><mo>-</mo><mn>5</mn><mo>,</mo><mo> </mo><mn>29</mn></mrow></mfenced></math>
None of the above works fine after importing xml to Indesign document/templete, it is not renderting equivalent out instead it is showing the same text inside tags in the Indesign document.
I have lot of content in our database, I will export to XML, import to Indesign, Indesign should render required output like what we see in the browser and export the output to printed format.
Import formated XML to indesign --> Export to Quality Print Format
Can any one guide me and let me know whether it is posible to do with Indesign, if so let me know in case if I am missing anything in importing xml and get required output.
Thanks in advance. Waiting for reply ASAP.Possibly your expectations are too high. ... Scratch that "possibly".
XML, in general, cannot be "rendered". It's just an abstract data format. Compare it to common markup such as *asterisks* to indicate emphasized words -- e-mail clients will show this text in bold, but InDesign, and the vast majority of other software, does not.
To "render" XML, HTML, MathML, or LaTeX -- you seem to freely mix these *very* different markup formats, unaware of the fact that they are vastly different from each other! -- in the format you "expect", you need to apply the appropriate software to each of the original data files. None of these markup languages are supported natively by InDesign. -
Conditional Build Tags cause RH9 AIRHelp crash
I have seen multiple posts about system crashes when using RoboHelp HTML and conditional build tags. Is anyone having the same problem using build tags with RH9 and AIR Help output? I have tried different combinations of build tags, a single build tag, as well as different project topics. All cause RoboHelp 9 to crash when generating AIR Help. Any suggestions? Is this a reported bug?
Hi there, this sounds somewhat like the issue I have with generating WebHelp, which I've posted here: http://forums.adobe.com/message/3813225#3813225
I can't seem to find other posts that relate to this, and you mentioned other posts at the start of yours. Can you reply with links? I would appreciate your time.
Thanks,
Michelle -
How is html page outputed when using taglib and xml ?
Dear all,
I am a newbie for taglib and xml. Today, when I read some source code of a
website, I found that there is a entry like
"%@ taglib uri="/tlds/taglib.tld" prefix="myprefix" %>",
and some other entries like
"<myprefix:Content area="<%=contentArea%>" />"
I opened the specifized file taglib.tld and saw a tag entry named "Content",
its tagclass is com.mycom.presentation.taglib.ContentTag. Again I opend a
java class file "ContentTag.java" and saw some setXXX methods and doXXX
methods. I donot know how is the webpage outputed. Can someone give me a
detailed description about that? I will greatly appreciate your help.
Some source code segments are listed as follows:
test.jsp:
<%@ taglib uri="/tlds/taglib.tld" prefix="myprefix" %>
<td>
<myprefix:Content body="<%=body%>" area="<%=contentArea%>"
pageName="<%=pageName%>" />
</td>
taglib.tld:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE taglib
PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN"
"http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
<tag>
<name>Content</name>
<tagclass>com.myprefix.presentation.taglib.ContentTag</tagclass>
<bodycontent>JSP</bodycontent>
<info>An tag which given the screen and element does the right content
thing!</info>
<attribute>
<name>id</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
<!--type>String</type-->
</attribute>
<attribute>
<name>pageName</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
<!--type>String</type-->
</attribute>
<attribute>
<name>area</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
<!--type>String</type-->
</attribute>
<attribute>
<name>body</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
<!--type>long</type-->
</attribute>
</tag>
ContentTag.java
package com.mycom.presentation.taglib;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.jsp.JspTagException;
import javax.servlet.jsp.tagext.BodyTagSupport;
public class ContentTag extends BodyTagSupport {
private String ......;
public String ......;
public ContentTag() {
super();
public void setPageName(String pageName) {
this.pageName = pageName;
public void setArea(String area) {
this.area = area;
public void setSegment(String segment) {
this.segment = segment;
if (segment!=null) // && !segment.equals("null")
this.segment_set = true;
public void setAdmin(String admin) {
try{
this.admin = Boolean.getBoolean(admin);
} catch (Exception _) {
debugCategory.debug("Setting admin err " + admin);
public void setBody(String body)
try {
this.body = Long.parseLong(body);
} catch (NumberFormatException ne) {
debugCategory.debug("Setting body format err");
public int doStartTag() {
if (contentMap == null)
HttpSession session = pageContext.getSession();
if (segment==null)
segment =
(String)session.getAttribute(Parameters.segment_id);
if (currentScreen==null)
currentScreen =
(String)session.getAttribute(Parameters.currentScreen);
try{
StateEngineProxy sep =
(StateEngineProxy)session.getAttribute("stateMachine");
ModelManager mm =
(ModelManager)session.getAttribute("modelManager");
if (sep == null||mm==null)
sep = new StateEngineProxy();
session.setAttribute("stateMachine", sep);
mm = new ModelManager();
mm.init(session, sep);
session.setAttribute("modelManager", mm);
if (body !=0)
//content = (ContentAI)
contentMap.get(Parameters.content_id+Long.toString(body));
if (content==null)
debugCategory.debug("Get by Body");
mm.getContent(body);
content =
(ContentAI)session.getAttribute(Parameters.content);
//contentMap.put(Parameters.content_id +
Long.toString(body), content);
file:// pageContext.setAttribute(CONTENT_MAP,
contentMap, myScope);
if (pageName!=null&&area!=null &&
segment!=null&&segment!=""&&area!=""&&pageName!="")
contentList = (Collection)
mm.getContentBySegmentPageNameAndArea(segment,
pageName, area);
if(contentList!=null){
Iterator it = contentList.iterator();
if (it.hasNext()) {
content = (ContentAI)it.next();
session.setAttribute(Parameters.content,
content);
return EVAL_BODY_TAG;
return EVAL_BODY_TAG;
public int doEndTag() throws JspTagException {
current = SUPPLIERSINFORMATION;
pageContext.getOut().flush();
if ( content != null
&& !currentScreen.equals(ScreenNames.CONTENT_LIST_URL)
&& !currentScreen.equals(ScreenNames.CONTENT_EDIT_URL))
if ( !admin ){
// include body?
if
rentScreen.equals(ScreenNames.CONTENT_NEWS_URL)){
pageContext.getOut().println("<h3>" + content.getSubject() + "<br></h3>");
pageContext.getOut().println("<!-- Subject[" + content.getSubject() + "]");
pageContext.getOut().println("OrgID[" + content.getOrgId() + "]");
pageContext.getOut().println("LogoPath[" + content.getLogoPath() + "]");
pageContext.getOut().println("PageName[" + content.getPageName() + "]");
pageContext.getOut().println("Area[" + content.getArea() + "]");
pageContext.getOut().println("Segment[" + content.getSegment() + "]");
pageContext.getOut().println("<!--Body[-->" + "<br>" + content.getBody() + "<!--]-->");
return EVAL_PAGE;
public int doAfterBody() throws JspTagException {
return SKIP_BODY;
public static String shortenLink(String link)
Hi Andy,
The sequence of operations that happen when a JSP page encounters a Custome Tag are
1. Find the class associated with the custom tag from the tld.
2. The set and get methods that u find are for passing the values for the tag attributes that u may need
to pass.
3. The Tag Lib class performs the operation specified and flushes the output to the jsp.
For further understanding ..u can refer to these sites !!!
http://java.sun.com/products/jsp/tutorial/TagLibrariesTOC.html
http://www.weblogic.com/docs51/classdocs/API_taglib.html#intro
Regards,
Sundhar Subramanian
Andy Ping wrote:
> Dear all,
>
> I am a newbie for taglib and xml. Today, when I read some source code of a
> website, I found that there is a entry like
> "%@ taglib uri="/tlds/taglib.tld" prefix="myprefix" %>",
> and some other entries like
> "<myprefix:Content area="<%=contentArea%>" />"
> I opened the specifized file taglib.tld and saw a tag entry named "Content",
> its tagclass is com.mycom.presentation.taglib.ContentTag. Again I opend a
> java class file "ContentTag.java" and saw some setXXX methods and doXXX
> methods. I donot know how is the webpage outputed. Can someone give me a
> detailed description about that? I will greatly appreciate your help.
> Some source code segments are listed as follows:
>
> ----------------
> test.jsp:
> ----------------
> ...
> <%@ taglib uri="/tlds/taglib.tld" prefix="myprefix" %>
> ...
> <td>
> <myprefix:Content body="<%=body%>" area="<%=contentArea%>"
> pageName="<%=pageName%>" />
> </td>
> ...
>
> ----------------
> taglib.tld:
> ----------------
> <?xml version="1.0" encoding="ISO-8859-1" ?>
> <!DOCTYPE taglib
> PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN"
> "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
> ......
> <tag>
> <name>Content</name>
> <tagclass>com.myprefix.presentation.taglib.ContentTag</tagclass>
> <bodycontent>JSP</bodycontent>
> <info>An tag which given the screen and element does the right content
> thing!</info>
> <attribute>
> <name>id</name>
> <required>false</required>
> <rtexprvalue>true</rtexprvalue>
> <!--type>String</type-->
> </attribute>
> <attribute>
> <name>pageName</name>
> <required>false</required>
> <rtexprvalue>true</rtexprvalue>
> <!--type>String</type-->
> </attribute>
> <attribute>
> <name>area</name>
> <required>false</required>
> <rtexprvalue>true</rtexprvalue>
> <!--type>String</type-->
> </attribute>
> <attribute>
> <name>body</name>
> <required>false</required>
> <rtexprvalue>true</rtexprvalue>
> <!--type>long</type-->
> </attribute>
> </tag>
> ......
>
> ----------------
> ContentTag.java
> ----------------
> package com.mycom.presentation.taglib;
>
> import javax.servlet.*;
> import javax.servlet.http.*;
> import javax.servlet.jsp.JspTagException;
> import javax.servlet.jsp.tagext.BodyTagSupport;
> ...
>
> public class ContentTag extends BodyTagSupport {
> private String ......;
> public String ......;
> ......
>
> public ContentTag() {
> super();
> }
>
> public void setPageName(String pageName) {
> this.pageName = pageName;
> }
>
> public void setArea(String area) {
> this.area = area;
> }
>
> public void setSegment(String segment) {
> this.segment = segment;
> if (segment!=null) // && !segment.equals("null")
> {
> this.segment_set = true;
> }
> }
>
> public void setAdmin(String admin) {
> try{
> this.admin = Boolean.getBoolean(admin);
> } catch (Exception _) {
> debugCategory.debug("Setting admin err " + admin);
> }
>
> }
> public void setBody(String body)
> {
> try {
> this.body = Long.parseLong(body);
> } catch (NumberFormatException ne) {
> debugCategory.debug("Setting body format err");
> }
> }
>
> public int doStartTag() {
> if (contentMap == null)
> {
> }
> HttpSession session = pageContext.getSession();
> if (segment==null)
> {
> segment =
> (String)session.getAttribute(Parameters.segment_id);
> }
> if (currentScreen==null)
> {
> currentScreen =
> (String)session.getAttribute(Parameters.currentScreen);
> }
> try{
> StateEngineProxy sep =
> (StateEngineProxy)session.getAttribute("stateMachine");
> ModelManager mm =
> (ModelManager)session.getAttribute("modelManager");
> if (sep == null||mm==null)
> {
> sep = new StateEngineProxy();
> session.setAttribute("stateMachine", sep);
> mm = new ModelManager();
> mm.init(session, sep);
>
> session.setAttribute("modelManager", mm);
> }
> if (body !=0)
> {
> //content = (ContentAI)
> //
> contentMap.get(Parameters.content_id+Long.toString(body));
> if (content==null)
> {
> debugCategory.debug("Get by Body");
> mm.getContent(body);
> content =
> (ContentAI)session.getAttribute(Parameters.content);
>
> //contentMap.put(Parameters.content_id +
> Long.toString(body), content);
> file:// pageContext.setAttribute(CONTENT_MAP,
> contentMap, myScope);
> }
> }
> if (pageName!=null&&area!=null &&
> segment!=null&&segment!=""&&area!=""&&pageName!="")
> {
> contentList = (Collection)
> mm.getContentBySegmentPageNameAndArea(segment,
> pageName, area);
> if(contentList!=null){
> Iterator it = contentList.iterator();
> if (it.hasNext()) {
> content = (ContentAI)it.next();
> session.setAttribute(Parameters.content,
> content);
> return EVAL_BODY_TAG;
> }
> }
> }
> ...
> }
> return EVAL_BODY_TAG;
> }
>
> public int doEndTag() throws JspTagException {
> current = SUPPLIERSINFORMATION;
> pageContext.getOut().flush();
> if ( content != null
> && !currentScreen.equals(ScreenNames.CONTENT_LIST_URL)
> && !currentScreen.equals(ScreenNames.CONTENT_EDIT_URL))
> {
> if ( !admin ){
> // include body?
> if
> rentScreen.equals(ScreenNames.CONTENT_NEWS_URL)){
> pageContext.getOut().println("<h3>" + content.getSubject() + "<br></h3>");
> }
> pageContext.getOut().println("<!-- Subject[" + content.getSubject() + "]");
> pageContext.getOut().println("OrgID[" + content.getOrgId() + "]");
> pageContext.getOut().println("LogoPath[" + content.getLogoPath() + "]");
> pageContext.getOut().println("PageName[" + content.getPageName() + "]");
> pageContext.getOut().println("Area[" + content.getArea() + "]");
> pageContext.getOut().println("Segment[" + content.getSegment() + "]");
> pageContext.getOut().println("<!--Body[-->" + "<br>" + content.getBody() + "<!--]-->");
> }
> }
> return EVAL_PAGE;
> }
>
> public int doAfterBody() throws JspTagException {
> return SKIP_BODY;
> }
>
> public static String shortenLink(String link)
> {
> ...
> }
> }
-
XML Publisher/Bi Publisher Using Oracle Package and MS Word Template builde
My Question is I want to know more about grouping of elements while creating reports in E business suite.
my approach should be 1. pl sql package with embedded XML data to create xml output. 2. Formatting the xml output using ms word template builder plugin.
My question is if grouping is required, then where should it be? While creating package to generate xml output or while formatting xml o/p in ms word?
I wanted to create a check cancellation report where the report should look like below.
Bank Name American express
Bank address 1 Cape town city Road
bank address 2 Lane 2
Bank City Cape town
Branch Docara v'dola
Check number Amount Vendor Status
1023423 225 huawei Voided
1023430 500 Ericson Voided
Signature
Now for above grouping I Written some thing like below package:
But I want to know Had I not done the grouping in Package, would it have still be possible to do the grouping in MS Word template builder?
To simply fy question: If I had not written 2 cursors and written 1 simple cursor and had got simple 1 after 1 fields without any specific grouping in ora package, would it have been possible to do the same grouping while formatting the xml output in MS word template builder?
the part of code enclosed.
begin
DBMS_APPLICATION_INFO.SET_CLIENT_INFO(FND_PROFILE.VALUE('ORG_ID'));
--fnd_file.put_line (fnd_file.output, '<?xml version = "1.0" encoding="ISO-8859-1"?>');
fnd_file.put_line(fnd_file.output, '<G_HEAD>');
for rec1 in c_bank_main
loop
fnd_file.put_line(fnd_file.output, '<G_BANK>');
fnd_file.put_line (fnd_file.output,'<c_bank><![CDATA['|| rec1.c_bank ||']]></c_bank>');
fnd_file.put_line (fnd_file.output,'<c_bank_acc><![CDATA['|| rec1.c_bank_acc ||']]></c_bank_acc>');
fnd_file.put_line (fnd_file.output,'<c_bankadress1><![CDATA['|| rec1.c_bankadress1 ||']]></c_bankadress1>');
fnd_file.put_line (fnd_file.output,'<c_bankadress2><![CDATA['|| rec1.c_bankadress2 ||']]></c_bankadress2>');
fnd_file.put_line (fnd_file.output,'<c_bankadress3><![CDATA['|| rec1.c_bankadress3 ||']]></c_bankadress3>');
fnd_file.put_line (fnd_file.output,'<c_bankcity><![CDATA['|| rec1.c_bankcity ||']]></c_bankcity>');
fnd_file.put_line (fnd_file.output,'<c_branch><![CDATA['|| rec1.c_branch ||']]></c_branch>');
for rec in c_bank_child(rec1.c_bank)
loop
fnd_file.put_line(fnd_file.output, '<G_CHECK>');
fnd_file.put_line (fnd_file.output,'<c_currency_code><![CDATA['|| rec.c_currency_code ||']]></c_currency_code>');
fnd_file.put_line (fnd_file.output,'<c_pay_currency_code><![CDATA['|| rec.c_pay_currency_code ||']]></c_pay_currency_code>');
fnd_file.put_line (fnd_file.output,'<c_cleared_amount><![CDATA['|| rec.c_cleared_amount ||']]></c_cleared_amount>');
fnd_file.put_line (fnd_file.output,'<c_nls_status><![CDATA['|| rec.c_nls_status ||']]></c_nls_status>');
fnd_file.put_line (fnd_file.output,'<c_nls_status><![CDATA['|| rec.c_nls_status||']]></c_nls_status>');
fnd_file.put_line (fnd_file.output,'<c_check_stock_name><![CDATA['|| rec.c_check_stock_name ||']]></c_check_stock_name>');
fnd_file.put_line (fnd_file.output,'<status_lookup_code><![CDATA['|| rec.status_lookup_code ||']]></status_lookup_code>');
fnd_file.put_line (fnd_file.output,'<c_check_number><![CDATA['|| rec.c_check_number ||']]></c_check_number>');
fnd_file.put_line (fnd_file.output,'<c_sum_amount><![CDATA['|| rec.c_sum_amount ||']]></c_sum_amount>');
fnd_file.put_line (fnd_file.output,'<c_vendor_name><![CDATA['|| rec.c_vendor_name ||']]></c_vendor_name>');
fnd_file.put_line (fnd_file.output,'<c_doc_sequence_value><![CDATA['|| rec.c_doc_sequence_value ||']]></c_doc_sequence_value>');
fnd_file.put_line(fnd_file.output, '</G_CHECK>');
end loop;
fnd_file.put_line(fnd_file.output, '</G_BANK>');
end loop;
fnd_file.put_line(fnd_file.output, '</G_HEAD>');
endHi,
You can do grouping in either place. But ideally to avoid re-grouping in the BI Publisher Template your XML would be generated such that it is appropriate for your template.
This is really important when it comes to very large datasets as you should avoid regrouping in the template in this case.
Regards,
Gareth
http://garethroberts.blogspot.com
http://www.virtuate.com -
RH10 variable and build tag source file names
I'm using RH10 and outputting to WebHelp. My company requires that I archive project source files to our CVS via Eclipse. I am not using RoboSource_Control and must use the company's development resources for archiving.
Since archiving the initial project, I have been uploading only source files with modified dates.
However, I have discovered that the files I thought were storing user variables and build tags are not the correct files to archive. Since I am uploading all files with a newer date and that's not working, I need to know the user variable source file name and the build tag source file name that stores the currently defined variables and build tags.
I have already tried the WebHelp forum and was directed to this forum to pose the question because I'm looking for source file information instead of output file information.
Thanks for your help!
karenYes, Eclipse does work that way. However, we do not use our development directory as the local Eclipse repository. I need to move changed files to the local repository (stores all source files in the project) so that Eclipse can upload changes to the server. Yes, this is planned redundancy.
That said, it is not acceptable to spend the time copying all files in the large projects from the work folder to the local repository. I simply need to know which individual files to copy that include the currently defined variables and build tags. Note, we do not copy the SSL folder output files to our local source file repository, or other associated reference files that are not actually project source files.
Can you find someone who knows which files I need?
Thanks,
karen
Maybe you are looking for
-
MSPS 2010 Issue and Risks Alerts
All, We are using MSPS 2010 with June CU Update. Is there a way to turn on "automatic Alerts" to the "Assigned To" person when an issue/risk is assigned to that person on a Project Site? I know this was not possible in Project 2007, and the options w
-
Audit activity for all objects in a schema
Hi, Is there a way to audit all DDL statements and certain DML statements (i.e. DELETE) for all objects in a particular schema? I've been going through the Oracle documentation, and there doesn't seem to be a straightforward way to do this. For examp
-
Problem to receive my mails in iMail
Hi, I have a problem by receiving my mails on iMail on my MacBook Pro (OS X Lion). I have two different mail accounts, first iCloud and an account by an other provider. Often iMail can't receive my mail on both accounts, somtimes just iCloud and somt
-
After upgrade to Lion, iPhoto will not save events nor save albums after created.
After upgrade to Lion, iPhoto will not save events nor save albums after created. Once iPhoto is shut down and re-launched, albums and events created no longer exist. How can this be fixed? Also, when attempting to create cards, iPhoto freezes. Messa
-
Max number of content items in one folder
Hi, What would be the max limit content item dumped in one folder??? Thanks