問題タブ [tridion2009]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
tridion - Tridion 2011 - 書式設定機能ウィンドウでの XSLT のフィルタリング
現在、2009 年から 2011 年にかけて Tridion のアップグレードを行っています。
奇妙な問題があり、更新方法が異なる理由を知りたいです。
私の問題:
多くのスキーマでは、コンテンツ フィールド (つまり、リッチ テキスト フィールド) 用の独自のフィルタリング XSLT があります。
例:
Tridion 2011 にアップグレードした後、スキーマが次の形式で更新されていることがわかります
このため、コンポーネントのリッチ テキスト フィールドが表示されません。
この動作の背後にある理由を教えてください。
この問題を解決するにはどうすればよいですか?
私はすでにこの解決策を修正しました。以下は修正です。
[XSLT のフィルタリング] タブで、現在の XSLT を適切な XSLT (Tridion 2009 にあるもの) に置き換えます。
tridion - 検索を使用せずに、特定の値とスキーマを持つ Tridion 2009 コンポーネントのリストを取得する
BluePrinted を含む特定のスキーマ (tcm:3-3-8) および特定の出版物 (tcm:0-3-1) に基づくすべてのコンポーネントを表示する CMS サーバー上にある .NET ページを作成したいと考えています。ローカライズされたアイテム。ただし、そのスキーマの「URL」フィールドの値が「http://www.google.com」である場合のみ。
これはかなり遅く、信頼性が低いため、検索サービスを使用せずにこれは可能ですか?
tridion - Tridion 2009 でのカスタム リゾルバーの構成
Tridion 2009 でカスタム リゾルバーを使用できるという噂があります (「公開すると多くのコンポーネントが公開されてメモリ不足になる」などを参照)。または、私は完全に軌道から外れており、2009 にはこの構成ファイルが付属していますか?
dynamic - DD4TTBBを使用してコンテンツを公開しているときにシリアル化エラーが発生しました
ソース管理からDD4TTBBを再構築し、TCMUploadAssembly.exeを使用してそれらをtridionに展開しました。
マルチメディアリンクフィールド、コンポーネントリンクフィールド、およびテキストフィールドを使用して単純なコンポーネントを作成し、値を入力しました。次に、[動的コンポーネントの生成、コンポーネントのバイナリの公開] TBBを含むCTを作成し、単一のDCPを公開しようとしました。
テンプレートビルダーでコンポーネントに対してCTを実行し、期待される出力を取得できます[つまり、適切にフォーマットされたシリアル化されたコンポーネントのXML出力]
ただし、公開すると、シリアル化エラーが発生します。(下記参照) 。このエラーは、コードがコンポーネントフィールド(テキスト/マルチメディア/コンポーネントリンクなど)をシリアル化しようとしているときに発生します。
根本的な原因を特定できません。この問題に直面しているコンポーネントオブジェクトのシリアル化中にすべてのdynamic.componentオブジェクトプロパティが正しく設定されているにもかかわらず、コードをリモートデバッグしようとしました。COM +、パブリッシャーサービスを再起動しようとしても、問題は解決しません。どんなポインタでも大歓迎です。
シリアル化エラーなしでテンプレートビルダーでコードが正しく実行されている理由を見つけることができませんでしたが、公開時に以下のエラーで失敗しました。
エラーメッセージは次のとおりです。
XMLドキュメントの生成中にエラーが発生しました。
XMLドキュメントの生成中にエラーが発生しました。
オブジェクト参照がオブジェクト インスタンスに設定されていません。
コンポーネント:テンプレート
エラーコード:0
ユーザー:NORD \ DWTMTSUser
StackTrace情報の詳細:
Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriterField.XSArrayInfo.get_Item(Object a、Int32 i)で
Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriterField.Write13_Field(String n、String ns、Object o、Boolean isNullable、Boolean needType)で
Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriterField.Write14_Field(Object o)で
System.Xml.Serialization.XmlSerializer.Serialize(XmlWriter xmlWriter、Object o、XmlSerializerNamespaces名前空間、String encodingStyle、String id)で
System.Xml.Serialization.XmlSerializer.Serialize(XmlWriter xmlWriter、Object o)で
D:\ DW-Source \ Mainline \ Src \ DD4T \ DD4T.ContentModel \ SerializableDictionary.cs:line80のDD4T.ContentModel.SerializableDictionary`3.WriteXml(XmlWriterライター)
System.Xml.Serialization.XmlSerializationWriter.WriteSerializable(IXmlSerializableシリアル化可能、文字列名、文字列ns、ブール値isNullable、ブール値ラップ)
Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriter1.Write13_Component(String n、String ns、Component o、Boolean isNullable、Boolean needType)の:line 0
Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriter1.Write32_Component(Object o)の:line 0
Microsoft.Xml.Serialization.GeneratedAssembly.ComponentSerializer.Serialize(Object objectToSerialize、XmlSerializationWriter writer)の:line 0
System.Xml.Serialization.XmlSerializer.Serialize(XmlWriter xmlWriter、Object o、XmlSerializerNamespaces名前空間、String encodingStyle、String id)で
System.Xml.Serialization.XmlSerializer.Serialize(XmlWriter xmlWriter、Object o、XmlSerializerNamespaces名前空間、String encodingStyle、String id)で
System.Xml.Serialization.XmlSerializer.Serialize(XmlWriter xmlWriter、Object o、XmlSerializerNamespaces名前空間、String encodingStyle)で
System.Xml.Serialization.XmlSerializer.Serialize(XmlWriter xmlWriter、Object o、XmlSerializerNamespaces名前空間)で
D:\ DW-Source \ Mainline \ Src \ DD4T \ DD4T.Templates.Base \ BaseComponentTemplate.cs:line 88のDD4T.Templates.Base.BaseComponentTemplate.Transform(エンジンエンジン、パッケージパッケージ)
Tridion.ContentManager.Templating.Assembly.AssemblyMediator.Transform(エンジンエンジン、テンプレートテンプレート、パッケージパッケージ)で
Tridion.ContentManager.Templating.Assembly.CSharpSourceCodeMediator.RunTemplate(エンジンエンジン、パッケージパッケージ、文字列templateUri、文字列className)で
Tridion.Templating.CSharpTemplate.CSharpSourceTemplate.Transform(Engine __engine、Package __package)で
Tridion.ContentManager.Templating.Assembly.CSharpSourceCodeMediator.Transform(エンジンエンジン、テンプレートテンプレート、パッケージパッケージ)で
Tridion.ContentManager.Templating.Engine.ExecuteTemplate(テンプレートテンプレート、パッケージパッケージ)で
tridion - Tridion 2011 の動的メニューの問題
動的コンポーネント プレゼンテーションの発行を通じて動的に生成されるメニューを持つアプリケーションがあります。menu.xml は、構造グループに基づくコンポーネント テンプレートによって書き出されます。このコンポーネント テンプレートは、構造グループが発行されるたびにイベント システムによってトリガーされます。が公開されています。
このセットアップは、Tridion 2009 から Tridion 2011 にアップグレードするまで正常に機能していました。しかし、アップグレード以降、メニューは動的に公開されておらず、構造グループに変更があるたびにメニュー コンポーネント テンプレートを再公開する必要があります。イベントシステムを確認しましたが、すべて問題ありません。さらに、このメニュー コンポーネント テンプレートの再公開は、他のいくつかのページ メニューで問題を引き起こします。
デバッグを行ったところ (コンポーネント テンプレートが作業中の pageURI をいつでも書き出せるようにしました)、書き出されたページ URI が間違っていることがわかりました。
以下は、実行された手順と到達した結論です。
エラーのあるページはすべてチェック済みです。DCP タグには、JSP コードで設定された正しい属性があります
追加の TRACE ステートメントが Tridion タグ ライブラリに追加されました。これにより、次のことが確認されました。
- XSLT はファイルシステムから正しく取得されました
- キャッシュされたメニューがキャッシュから正しく取得されました
XSLT は提供された変数で正しく変換されました
XSLT 属性を HTML に書き出すと、XSLT プロセッサに間違ったパラメータが提供されていることがわかります。
したがって、問題は次のイベントに限定されていると安全に結論付けることができます。XSL プロセッサが正しくないページ ID で呼び出されています。最も可能性の高い原因は、動的コンポーネント プレゼンテーション (DCP) の Java コードの同時実行の問題であり、DCP が群がり、現在のオブジェクトを使用しているページが混乱し始めます。
また、このような場合、それを修正するために何ができるでしょうか。
どんな情報でも役に立ちます。前もって感謝します!
よろしく、
キールタナ TS
2013 年 1 月 22 日の更新:
さらにデバッグすると、この問題はプレゼンテーション側 (プレゼンテーション サーバー) で再発することがわかり、イベント システムはページに表示される間違ったメニューとは何の関係もありません。
つまり、Tridion から公開された jsp ページを表示すると、トップ メニュー、左メニュー、パンくずリストの正しいページ URI が表示されます。
ただし、Web ページのソースを表示すると、ページ URI (ページ URI を html ページに書き出したもの) が次のようにめちゃくちゃになっていることがわかります。
これによりパンくずリストが生成され、正しい pageURI ではなく別の pageURI が取得されます。
tridion - Tridion 2011 でコンポーネントの「情報」の詳細を変更/カスタマイズすることは可能ですか?
ユーザーに応じてコンポーネントの「情報」タブの詳細を変更/カスタマイズすることは可能ですか? 以下の詳細をご覧ください。
上の画像では、(d:\images\Chrysanthemum.jpg) "Original File:" のように Image のフル パスを表示したいと思います。
出来ますか?
tridion - SDL Tridion2009SP1カスタムURLは現在のフィールド値を取得します
次のコードを含むコンポーネントフィールドのカスタムURLに接続しています
SaveAndClose関数は完全に機能し、値をコンポーネントに送り返しますが、window.dialogArguments.fieldValueは常にundefinedを返します。
tridion - SDL Tridion 5.3sp1から2011sp1へのTridion移行に関する質問
Tridion 5.3sp1 を 2011sp1 に移行する必要があります。
誰かがこの種の移行の経験があれば、
以下の機能のみを使用しています。
- DWT (あまり変化が見られません)
- Tom.net
- TOM (TDSEクラス)
何を変える必要がありますか?痛みのある部位とは?
詳しい情報はオンラインでどこで入手できますか?
tridion - リッチ テキスト スキーマ フィールドのドキュメント タイプの変更 Tridion 2009
私はときどき Tridion を使用するフロント エンド開発者です (あまり技術的なレベルではありません)。Tridion 2009 リッチ テキスト スキーマ フィールドのドキュメント タイプを変更して、データ属性を使用できるようにする方法を探しています (ツールチップ ポップオーバー用)。現時点では、リッチ テキスト フィールドは Strict または Transitional のいずれかに設定されています。HTML5 に設定する必要があります (これは 2011 年にいくつかの変更を加えて実行できることを知っています。どのような変更かはわかりません。) 現状では、これらのモードのいずれかで、公開時にデータ属性がデフォルトで取り除かれます。HTML5 を選択すると、この問題が修正されます。
どんな助けでも大歓迎です。
tridion - コンポーネント内の XSLT がエンコード (アン) される
本当に簡単な質問ですが、正しく機能していないようです。
XSLT (ナビゲーション用) があるコンポーネントがあります。XSLT TBB を介して XSLT Mediator を使用して公開されます。
< を公開すると、<に変更され、xsltを壊します...
コンポーネント コンテンツ (プレーン テキスト フィールド)
このコンポーネントを出力する XLT CT TBB:
CP を出力する XSLT ページ TBB: