2011-01-04 18 views
1

salesforceデータベースからxmlを作成しています。フェッチされたデータに&がある場合を除いてすべて正常に動作します。データベースからxmlを作成する

<apex:page contenttype="text/xml" 
> controller="Test2ab" > <data 
> wiki-section="Timeline"> <apex:repeat 
> value="{!lsttask}" var="e" > <event 
> start="{!e.ActivityDate}" title= 
> "{!e.Subject}"> <apex:outputText 
> value="{!e.Subject}" /> </event> 
> </apex:repeat> </data></apex:page> 

とコントローラに私はちょうど私がデータベースから
おかげ Prady

答えて

1

を取得した値のためのエスケープを使用することができ、私はAPEXについてほとんど知っているどのように

> lsttask =[Select OwnerId,WhoId,Status,Subject,ActivityDate from Task where Status = 'Completed' Order By ActivityDate Desc]; 

を照会しています/ Salesforceでは、データベースからフェッチされた文字列からXMLを構築するときには、おそらく文字列のreplaceメソッドを呼び出す必要があります:

string.replace("&","&amp;") 

http://www.salesforce.com/us/developer/docs/apexcode/salesforce_apex_language_reference.pdf

また、あなたの例では< with &lt;, > with &gt;,' with &apos; and " with &quot;

0

の交換でトップを見て欲しいかもしれないが、これはうまく動作します:あなたはまた、使用することができますシンプルなケースでは

<apex:outputText value="{!HTMLENCODE(e.Subject)}" escape="false" /> 

{!HTMLENCODE(e.Subject)} 

はここHTMLENCODE and other Salesforce functions ペアリングの頂点の一例をまとめたものである:HTMLENCODEとのoutputTextとこれが同様に役立つかもしれないApex Dev Guide

関連する問題