問題タブ [emf]

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.

0 投票する
3 に答える
2376 参照

eclipse - 派生 Ecore クラス (EMF) の属性の値をオーバーライドする

継承に関しては、ecore ベースのモデルで属性全体をオーバーライドまたは再定義できないという事実を認識しています。しかし、どうにかして既存の継承された属性に新しい値を割り当てることはできますか?

たとえば、クラス A は文字列である属性を定義し、デフォルト値は「defaultA」に設定されます。クラス B はクラス A から継承し、名前の値は「defaultB」である必要があります。

クラス B で同じ名前とデータ型を持つ属性を再実装しようとしましたが、そこから genmodel を作成できません (「'name' という名前の機能が 2 つない可能性があります」)。

継承された属性の値を変更することさえ可能ではありませんか?

0 投票する
1 に答える
706 参照

eclipse - Eclipse/RCP アプリケーションの外で EMF を使用していますか?

たとえば、デプロイするJ2EEアプリケーションがあります。トムキャット。モデルコードのモデル化と生成には MagicDraw を使用します。現在、MagicDraw の代替案を検討しています。

以前にEMFを使用しました:

http://www.eclipse.org/modeling/emf/

しかし、それはRCPアプリケーション内にありました(P2、maven / tychoによる依存関係の処理)。

mvnrepository を一目見ただけでは、あまり多くの結果は得られません (もちろん、必要な依存関係を手動で独自の にアップロードすることもできます)。

http://mvnrepository.com/search.html?query=emf

EMF は RCP/OSGi 以外のアプリケーションでどの程度うまく機能しますか? また、開始するための例はありますか?

私が見つけたいくつかのリソース:

http://www.fosslc.org/drupal/content/emf-large-scale-modeling-outside-eclipse http://www.eclipsezone.com/eclipse/forums/t57389.html

0 投票する
1 に答える
109 参照

java - EObject (EMF) の読み取り専用表現を提供する方法はありますか?

EMF モデルがあり、モデル内の一部のオブジェクトに読み取り専用の表現を提供したいと考えています (モデルに不要な変更が加えられるのを防ぐため)。

これを提供する方法はありますか (おそらく、EObjects の読み取り専用プロキシ/ファサードのようなもの)? セッターを生成しないだけでこれを解決したくありません。実際、既存のモデル クラスを変更することはできる限り避けたいと考えています。代わりに、何かを追加したいのですが...

前もってありがとう、インゴ

0 投票する
0 に答える
389 参照

java - org.eclipse.wst.wsdl.util.WSDLResourceImpl を使用して WSDL ファイルをロードするときの Nullpointer 例外

org.eclipse.wst.wsdl.util.WSDLResourceImpl を使用して WSDL ファイルをロードしているときに問題が発生し、Nullpointer Exception の問題が見つかりました。

EMF モデルが 1 つのクラス ローダーで初期化され、2 番目のクラス ローダーが EMF WSDl ロードを呼び出すと、org.eclipse.wst.wsdl.internal.impl.MessageImpl の以下のコードが Nullpointer 例外を引き起こすことがわかりました。

Nullpointer 例外はここで発生します

パート part = ((WSDLPackage)EPackage.Registry.INSTANCE.getEPackage(WSDLPackage.eNS_URI)).getWSDLFactory().createPart();

2 番目のクラスローダの WSDL 名前空間 URI のエントリがレジストリにないため

上記の問題のスタックトレースを以下に示します

このシナリオでは、EMF WSDL モデルがクラスローダー 1 で初期化されるスレッドが 1 つあります。次に、モデル WSDL ファイルの読み込みを呼び出す別のスレッドがあり、そこでクラスローダー 2 が読み込みを行っています。次に、org.eclipse.wst.wsdl.internal.impl.MessageImpl の以下のコードは Nullpointer 例外で失敗します

パート part = ((WSDLPackage)EPackage.Registry.INSTANCE.getEPackage(WSDLPackage.eNS_URI)).getWSDLFactory().createPart();

したがって、2 回目の isInited が true であり、初期化が行われないため、2 回目の EMF クラスがロードされた場合、2 つのクラス ローダーでは EMF モデルを初期化できないことは明らかです。切り取ったコードを以下に示します

org.eclipse.xsd.util.XSDResourceImpl を使用して XSD ファイルをロードすると、以下のメソッドになるため、XSD でも同じ問題が発生します。

XSDResourceImpl.handleSchemaElement(Element, boolean)

ここで、コードは以下のとおりです

ここでは、XSDFcatory がフローウィング方式で使用されています

xsdSchema = XSDFactory.eINSTANCE.createXSDSchema();

そのため、以下に示すように org.eclipse.wst.wsdl.internal.impl.MessageImpl でこのコードを変更できない理由を知りたいと考えました。これにより、問題を修正でき、XSD の動作とも一致します。

それ以外の場合は、この問題に対する別の代替ソリューションがあればお知らせください。複数のクラスローダーが存在する場合、明らかにクラスローディングによって EPackage.Registry.INSTANCE で問題が発生します。

また、2つの疑問があります

1) レジストリがクラスローダごとである理由。その場合、EMF が一度初期化されると、複数のクラスローダーのレジストリにデータを入力する方法があり、再度初期化することはできません。

2) org.eclipse.wst.wsdl.internal.impl.MessageImpl でも、レジストリの代わりに WSDFactory.eINSTANCE を使用できない理由

これは、私たちが取り組んでいるプロジェクトの 1 つにとって非常に重要であるため、お知らせください。非常に優先度の高いソリューションが必要です

ありがとうございます

0 投票する
2 に答える
51 参照

java - 特定の構成を実行する

こんにちは、Eclipse の実行構成の問題に直面しています。私の問題を解決する方法の簡単な例を見つけるために検索しましたが、何も見つかりませんでした。

さて、私のプログラムにはsmth.modelと呼ばれるファイルがあり、このモデルファイルを実行して、特定のモデルファイルを指す特定の構成を作成するために必要なモデルのすべての情報を含むHTMLファイルを作成したい場合および特定の HTML テンプレート (egl) に。すべてが正常に機能しています。

私が今欲しいのは、ユーザーがEclipse環境を使用したことがないと言って、モデルファイルを右クリックして、「HTML実行」などと呼ぶ特定の構成を実行するオプションがあることです。モデル ファイルを右クリックすると、Run as オプションが表示され、実行構成ウィザードが表示されます。ユーザーが実行を選択したときに、ウィザードではなく私の構成を表示することを望んでいません。

それは可能ですか?私に役立つ例はありますか? 前もって感謝します!

0 投票する
1 に答える
102 参照

xtext - XFeatureCall が実際に何かを参照しているかどうかを確認する方法

ast をスキャンしているときに、XFeatureCall 型の要素を解決できるかどうかを確認したいと考えています。

具体例:

そんなこと知ってる

ただし、XFeatureCall "z" のみが true になるはずです (検索しているまだ見つかっていない述語を適用する場合)。

これまでのところ、私はパターンを見つけることができませんでした。ただし、解決できないすべての変数が次の条件を満たす場合を除きます。

fc は XFeatureCall を意味します

しかし、これでは十分ではありません。「System.out.println」も見えるからです。

注: ルート AST 要素から取得した TreeIterator を使用します

必要に応じて、XbaseCompiler がどのようにそれを行うかを調べますが、私はそうしないことを好みます :)

0 投票する
1 に答える
336 参照

java - EMF発生スイングアプリケーション

私は単純なデスクトップ アプリケーションを開発しています。

モデル構造を UML のような形式で観察および変更できることは非常に便利であり、EMF はそれを可能にします。EMF コード生成アプローチを既存の GUI フレームワーク (つまり Swing) と組み合わせたいのですが、既存の例が見つかりません。

それは合理的な考えではないからだろうか?アプリケーションの背後にあるモデル構造を把握して編集し、具体的な GUI フレームワークのコードを生成する方法が他にあるのではないでしょうか?