Submit Search
Upload
Salesforce連携のためのOData入門
•
13 likes
•
10,093 views
Shunji Konishi
Follow
2014/12/25 社内勉強会資料
Read less
Read more
Technology
Report
Share
Report
Share
1 of 20
Download now
Download to read offline
Recommended
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
NTT DATA Technology & Innovation
Google Cloud Dataflow を理解する - #bq_sushi
Google Cloud Dataflow を理解する - #bq_sushi
Google Cloud Platform - Japan
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
NTT DATA Technology & Innovation
KeycloakでAPI認可に入門する
KeycloakでAPI認可に入門する
Hitachi, Ltd. OSS Solution Center.
Helidon 概要
Helidon 概要
オラクルエンジニア通信
Apache Hiveの今とこれから
Apache Hiveの今とこれから
Yifeng Jiang
Redisの特徴と活用方法について
Redisの特徴と活用方法について
Yuji Otani
Java クライント実装におけるAPIスタイル頂上決戦! 野良REST vs GraphQL vs OData vs OpenAPI (Swagger)
Java クライント実装におけるAPIスタイル頂上決戦! 野良REST vs GraphQL vs OData vs OpenAPI (Swagger)
Kazuya Sugimoto
Recommended
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
NTT DATA Technology & Innovation
Google Cloud Dataflow を理解する - #bq_sushi
Google Cloud Dataflow を理解する - #bq_sushi
Google Cloud Platform - Japan
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
NTT DATA Technology & Innovation
KeycloakでAPI認可に入門する
KeycloakでAPI認可に入門する
Hitachi, Ltd. OSS Solution Center.
Helidon 概要
Helidon 概要
オラクルエンジニア通信
Apache Hiveの今とこれから
Apache Hiveの今とこれから
Yifeng Jiang
Redisの特徴と活用方法について
Redisの特徴と活用方法について
Yuji Otani
Java クライント実装におけるAPIスタイル頂上決戦! 野良REST vs GraphQL vs OData vs OpenAPI (Swagger)
Java クライント実装におけるAPIスタイル頂上決戦! 野良REST vs GraphQL vs OData vs OpenAPI (Swagger)
Kazuya Sugimoto
Infrastructure as Code (IaC) 談義 2022
Infrastructure as Code (IaC) 談義 2022
Amazon Web Services Japan
マルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのこと
Amazon Web Services Japan
HBaseとRedisを使った100億超/日メッセージを処理するLINEのストレージ
HBaseとRedisを使った100億超/日メッセージを処理するLINEのストレージ
LINE Corporation
Data platformdesign
Data platformdesign
Ryoma Nagata
KubernetesでRedisを使うときの選択肢
KubernetesでRedisを使うときの選択肢
Naoyuki Yamada
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
NTT DATA Technology & Innovation
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
セキュリティを強化しよう!CloudArmorの機能解説
セキュリティを強化しよう!CloudArmorの機能解説
虎の穴 開発室
Oracle Cloud Infrastructure:2023年4月度サービス・アップデート
Oracle Cloud Infrastructure:2023年4月度サービス・アップデート
オラクルエンジニア通信
どうやって決める?kubernetesでのシークレット管理方法(Cloud Native Days 2020 発表資料)
どうやって決める?kubernetesでのシークレット管理方法(Cloud Native Days 2020 発表資料)
NTT DATA Technology & Innovation
そんなトランザクションマネージャで大丈夫か?
そんなトランザクションマネージャで大丈夫か?
takezoe
超実践 Cloud Spanner 設計講座
超実践 Cloud Spanner 設計講座
Samir Hammoudi
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
Amazon Web Services Japan
Apache Sparkの基本と最新バージョン3.2のアップデート(Open Source Conference 2021 Online/Fukuoka ...
Apache Sparkの基本と最新バージョン3.2のアップデート(Open Source Conference 2021 Online/Fukuoka ...
NTT DATA Technology & Innovation
使ってみませんか?pg_hint_plan
使ってみませんか?pg_hint_plan
NTT DATA OSS Professional Services
M12_数百台の開発サーバをリフトアンドシフト! Azure Migrate 活用ポイント [Microsoft Japan Digital Days]
M12_数百台の開発サーバをリフトアンドシフト! Azure Migrate 活用ポイント [Microsoft Japan Digital Days]
日本マイクロソフト株式会社
Azure Log Analytics 概要
Azure Log Analytics 概要
喜智 大井
Fantiaから学ぶgcp運用のノウハウ
Fantiaから学ぶgcp運用のノウハウ
虎の穴 開発室
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
NTT DATA Technology & Innovation
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
NTT DATA Technology & Innovation
業務システムで使える可視化テクニック - Apache HTTP編 -
業務システムで使える可視化テクニック - Apache HTTP編 -
Yasuyuki Sugai
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
NTT DATA Technology & Innovation
More Related Content
What's hot
Infrastructure as Code (IaC) 談義 2022
Infrastructure as Code (IaC) 談義 2022
Amazon Web Services Japan
マルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのこと
Amazon Web Services Japan
HBaseとRedisを使った100億超/日メッセージを処理するLINEのストレージ
HBaseとRedisを使った100億超/日メッセージを処理するLINEのストレージ
LINE Corporation
Data platformdesign
Data platformdesign
Ryoma Nagata
KubernetesでRedisを使うときの選択肢
KubernetesでRedisを使うときの選択肢
Naoyuki Yamada
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
NTT DATA Technology & Innovation
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
セキュリティを強化しよう!CloudArmorの機能解説
セキュリティを強化しよう!CloudArmorの機能解説
虎の穴 開発室
Oracle Cloud Infrastructure:2023年4月度サービス・アップデート
Oracle Cloud Infrastructure:2023年4月度サービス・アップデート
オラクルエンジニア通信
どうやって決める?kubernetesでのシークレット管理方法(Cloud Native Days 2020 発表資料)
どうやって決める?kubernetesでのシークレット管理方法(Cloud Native Days 2020 発表資料)
NTT DATA Technology & Innovation
そんなトランザクションマネージャで大丈夫か?
そんなトランザクションマネージャで大丈夫か?
takezoe
超実践 Cloud Spanner 設計講座
超実践 Cloud Spanner 設計講座
Samir Hammoudi
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
Amazon Web Services Japan
Apache Sparkの基本と最新バージョン3.2のアップデート(Open Source Conference 2021 Online/Fukuoka ...
Apache Sparkの基本と最新バージョン3.2のアップデート(Open Source Conference 2021 Online/Fukuoka ...
NTT DATA Technology & Innovation
使ってみませんか?pg_hint_plan
使ってみませんか?pg_hint_plan
NTT DATA OSS Professional Services
M12_数百台の開発サーバをリフトアンドシフト! Azure Migrate 活用ポイント [Microsoft Japan Digital Days]
M12_数百台の開発サーバをリフトアンドシフト! Azure Migrate 活用ポイント [Microsoft Japan Digital Days]
日本マイクロソフト株式会社
Azure Log Analytics 概要
Azure Log Analytics 概要
喜智 大井
Fantiaから学ぶgcp運用のノウハウ
Fantiaから学ぶgcp運用のノウハウ
虎の穴 開発室
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
NTT DATA Technology & Innovation
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
NTT DATA Technology & Innovation
What's hot
(20)
Infrastructure as Code (IaC) 談義 2022
Infrastructure as Code (IaC) 談義 2022
マルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのこと
HBaseとRedisを使った100億超/日メッセージを処理するLINEのストレージ
HBaseとRedisを使った100億超/日メッセージを処理するLINEのストレージ
Data platformdesign
Data platformdesign
KubernetesでRedisを使うときの選択肢
KubernetesでRedisを使うときの選択肢
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
セキュリティを強化しよう!CloudArmorの機能解説
セキュリティを強化しよう!CloudArmorの機能解説
Oracle Cloud Infrastructure:2023年4月度サービス・アップデート
Oracle Cloud Infrastructure:2023年4月度サービス・アップデート
どうやって決める?kubernetesでのシークレット管理方法(Cloud Native Days 2020 発表資料)
どうやって決める?kubernetesでのシークレット管理方法(Cloud Native Days 2020 発表資料)
そんなトランザクションマネージャで大丈夫か?
そんなトランザクションマネージャで大丈夫か?
超実践 Cloud Spanner 設計講座
超実践 Cloud Spanner 設計講座
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
Apache Sparkの基本と最新バージョン3.2のアップデート(Open Source Conference 2021 Online/Fukuoka ...
Apache Sparkの基本と最新バージョン3.2のアップデート(Open Source Conference 2021 Online/Fukuoka ...
使ってみませんか?pg_hint_plan
使ってみませんか?pg_hint_plan
M12_数百台の開発サーバをリフトアンドシフト! Azure Migrate 活用ポイント [Microsoft Japan Digital Days]
M12_数百台の開発サーバをリフトアンドシフト! Azure Migrate 活用ポイント [Microsoft Japan Digital Days]
Azure Log Analytics 概要
Azure Log Analytics 概要
Fantiaから学ぶgcp運用のノウハウ
Fantiaから学ぶgcp運用のノウハウ
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
Similar to Salesforce連携のためのOData入門
業務システムで使える可視化テクニック - Apache HTTP編 -
業務システムで使える可視化テクニック - Apache HTTP編 -
Yasuyuki Sugai
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
NTT DATA Technology & Innovation
レプリケーション遅延の監視について(第40回PostgreSQLアンカンファレンス@オンライン 発表資料)
レプリケーション遅延の監視について(第40回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
[Postgre sql9.4新機能]レプリケーション・スロットの活用
[Postgre sql9.4新機能]レプリケーション・スロットの活用
Kosuke Kida
20190925_DBTS_PGStrom
20190925_DBTS_PGStrom
Kohei KaiGai
[B22] PostgresPlus Advanced Server の Oracle Database 互換機能検証 by Noriyoshi Shinoda
[B22] PostgresPlus Advanced Server の Oracle Database 互換機能検証 by Noriyoshi Shinoda
Insight Technology, Inc.
20150822 Application Insightsでお手軽WPアプリ監視
20150822 Application Insightsでお手軽WPアプリ監視
Takayoshi Tanaka
SWF+FlowFrameworkを使ってみた@JAWS-UG高尾山 2015.09.27
SWF+FlowFrameworkを使ってみた@JAWS-UG高尾山 2015.09.27
Tetsuya Mase
リンクトオープンデータ(LOD)の紹介と、その先にある参画・協働・復興促進
リンクトオープンデータ(LOD)の紹介と、その先にある参画・協働・復興促進
Shun Shiramatsu
20120525 mt websocket
20120525 mt websocket
Ryosuke MATSUMOTO
できる!サーバレスアーキテクチャ
できる!サーバレスアーキテクチャ
azuma satoshi
Similar to Salesforce連携のためのOData入門
(11)
業務システムで使える可視化テクニック - Apache HTTP編 -
業務システムで使える可視化テクニック - Apache HTTP編 -
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
レプリケーション遅延の監視について(第40回PostgreSQLアンカンファレンス@オンライン 発表資料)
レプリケーション遅延の監視について(第40回PostgreSQLアンカンファレンス@オンライン 発表資料)
[Postgre sql9.4新機能]レプリケーション・スロットの活用
[Postgre sql9.4新機能]レプリケーション・スロットの活用
20190925_DBTS_PGStrom
20190925_DBTS_PGStrom
[B22] PostgresPlus Advanced Server の Oracle Database 互換機能検証 by Noriyoshi Shinoda
[B22] PostgresPlus Advanced Server の Oracle Database 互換機能検証 by Noriyoshi Shinoda
20150822 Application Insightsでお手軽WPアプリ監視
20150822 Application Insightsでお手軽WPアプリ監視
SWF+FlowFrameworkを使ってみた@JAWS-UG高尾山 2015.09.27
SWF+FlowFrameworkを使ってみた@JAWS-UG高尾山 2015.09.27
リンクトオープンデータ(LOD)の紹介と、その先にある参画・協働・復興促進
リンクトオープンデータ(LOD)の紹介と、その先にある参画・協働・復興促進
20120525 mt websocket
20120525 mt websocket
できる!サーバレスアーキテクチャ
できる!サーバレスアーキテクチャ
More from Shunji Konishi
Salesforceのハッカソンに参加した話
Salesforceのハッカソンに参加した話
Shunji Konishi
プロキシーを使ってテストを楽にする
プロキシーを使ってテストを楽にする
Shunji Konishi
Javascriptのあれやこれやをまとめて説明してみる
Javascriptのあれやこれやをまとめて説明してみる
Shunji Konishi
MochaとChaiでやるJavaScriptテスト
MochaとChaiでやるJavaScriptテスト
Shunji Konishi
SendGridサンプルの紹介
SendGridサンプルの紹介
Shunji Konishi
セキュリティの考え方
セキュリティの考え方
Shunji Konishi
一番簡単なWebSocketの試し方
一番簡単なWebSocketの試し方
Shunji Konishi
WebSocketでリアルタイムクイズアプリを作ってみた
WebSocketでリアルタイムクイズアプリを作ってみた
Shunji Konishi
良質なコードを高速に書くコツ
良質なコードを高速に書くコツ
Shunji Konishi
Heroku tips1
Heroku tips1
Shunji Konishi
Playframework1でSeleniumテスト
Playframework1でSeleniumテスト
Shunji Konishi
Heroku Dyno再起動時の振る舞い
Heroku Dyno再起動時の振る舞い
Shunji Konishi
Dyno cycling behavior of Heroku
Dyno cycling behavior of Heroku
Shunji Konishi
Herokuで使えるRDBMS管理者ツール
Herokuで使えるRDBMS管理者ツール
Shunji Konishi
Play1 to Play2
Play1 to Play2
Shunji Konishi
お手軽Ajaxアプリケーションの作り方
お手軽Ajaxアプリケーションの作り方
Shunji Konishi
Herokuのログ解析ツール
Herokuのログ解析ツール
Shunji Konishi
Excel2 canvas
Excel2 canvas
Shunji Konishi
特盛!Heroku
特盛!Heroku
Shunji Konishi
文字コードのお話
文字コードのお話
Shunji Konishi
More from Shunji Konishi
(20)
Salesforceのハッカソンに参加した話
Salesforceのハッカソンに参加した話
プロキシーを使ってテストを楽にする
プロキシーを使ってテストを楽にする
Javascriptのあれやこれやをまとめて説明してみる
Javascriptのあれやこれやをまとめて説明してみる
MochaとChaiでやるJavaScriptテスト
MochaとChaiでやるJavaScriptテスト
SendGridサンプルの紹介
SendGridサンプルの紹介
セキュリティの考え方
セキュリティの考え方
一番簡単なWebSocketの試し方
一番簡単なWebSocketの試し方
WebSocketでリアルタイムクイズアプリを作ってみた
WebSocketでリアルタイムクイズアプリを作ってみた
良質なコードを高速に書くコツ
良質なコードを高速に書くコツ
Heroku tips1
Heroku tips1
Playframework1でSeleniumテスト
Playframework1でSeleniumテスト
Heroku Dyno再起動時の振る舞い
Heroku Dyno再起動時の振る舞い
Dyno cycling behavior of Heroku
Dyno cycling behavior of Heroku
Herokuで使えるRDBMS管理者ツール
Herokuで使えるRDBMS管理者ツール
Play1 to Play2
Play1 to Play2
お手軽Ajaxアプリケーションの作り方
お手軽Ajaxアプリケーションの作り方
Herokuのログ解析ツール
Herokuのログ解析ツール
Excel2 canvas
Excel2 canvas
特盛!Heroku
特盛!Heroku
文字コードのお話
文字コードのお話
Recently uploaded
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
sugiuralab
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
osamut
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
Atomu Hidaka
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
iPride Co., Ltd.
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
Shota Ito
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
furutsuka
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
iPride Co., Ltd.
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
Ryo Sasaki
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
danielhu54
Recently uploaded
(9)
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
Salesforce連携のためのOData入門
1.
2014年12月25日 株式会社FLECT 小西俊司
2.
Heroku Postgres上のデータをSalesforceの外部オ ブジェクトとして参照したいらしい
ODataの細かい仕様がどうなっているのかという点に は全く踏み込んでいない ◦ 所詮2,3日調べた程度なので多くを期待してはいけない
3.
Open Data
Protocol ◦ http://www.odata.org/ ◦ Microsoft が主導で推進しているらしい httpのREST APIだけでデータの参照・更新・削除を 行うための仕様 SQLのhttp版くらいに思っておけばOKだと思う ◦ ↑というか、まさに今この程度の理解 ◦ 具体的な検索条件やソートの指定の仕方等はなんとなく試し てみた程度でちゃんと調べてはいない
4.
httpだけでデータを読み書きできることにつきる CORS(Cross
Origin Resource Sharing)との組み 合わせを考えるとこんな状況もありえるかも? ◦ 近年色々な鉄道会社が時刻表や電車の遅延情報などをAPI で提供し始めている(気がする) ◦ しかし、それぞれの鉄道会社はAPIはRESTではあっても全部 独自形式(知らないけど多分) ◦ 各社のAPIはCORSには対応していないのでブラウザから直 接は叩けず、サーバで実行するしかない(に違いない) ◦ CORSとODataがサポートされればブラウザから直接各社の データに統一規格でアクセスできるのサーバ不要でアプリが 作れる(公開先はもはやGitHub.ioで良いですね(^^v) まぁ希望なんで当分なさそうではあるけど
5.
V1からV4まであるらしい ◦ V4は近日正式リリース予定らしい
どこが変わったのかは知らないけど、多分できること が増えているのであろう 現在広く使われているバージョンはV2 ◦ かどうかは確信が無いが、とりあえずSalesforceの外部デー タ参照でサポートされているのはV2のみ ◦ V4も近い将来サポートされるらしい
6.
http://www.odata.org/libraries/ MS主導のため.NETのライブラリが一番充実している
Javaのライブラリで有力なのは以下の二つ ◦ Apache Olingo V2 and V4 サーバ/クライアント両対応 ◦ odata4j V1 – V3 サーバ/クライアント両対応 odata4jはコミットログを見る限り停滞しているように 見えるので、Olingoを使うのが良さげ
7.
一部クラスがServlet API依存なので、Play等の非 Servletから扱うのはしんどい ◦
やりかけたけど途中であきらめました。 ライブラリの完成度はやや怪しいかも。。。(-- ◦ 2,3日の評価なんで何とも言えないけど(後述) V4はまったく未検証
8.
https://github.com/shunjikonishi/odata- producer Olingoで作成したOData
Producer ◦ JPAのエンティティを作成することでテーブルをODataとして 公開出来る ◦ サンプルデータとして、Car, Makerという二つのテーブルと テストデータを生成する ◦ ベーシック認証対応
9.
サンプルはHeroku上で公開されているので以下の URLにアクセス ◦ BasicAuth:
test/password ◦ http://flect-odata-test.herokuapp.com/odata ◦ http://flect-odata-test.herokuapp.com/odata/$metadata ◦ http://flect-odata-test.herokuapp.com/odata/Cars ◦ http://flect-odata-test.herokuapp.com/odata/Cars(1) ◦ http://flect-odata- test.herokuapp.com/odata/Cars?$filter=Car_name%20eq%2 0%27LEGACY%27
10.
設定 >
開発 > External Data Sources 設定項目 ◦ サーバURL: OData ProducerのURL (Ex. https://flect-odata-test.herokuapp.com/odata) ◦ 種別: OData 2.0 ◦ 形式: AtomPub ◦ Basic認証を設定した場合以下の認証設定が必要 ◦ ID種別: 指定ユーザ ◦ 認証プロトコル: パスワード認証 ◦ ユーザ名とパスワード
11.
設定 >
開発 > 外部オブジェクト ◦ 外部データソースを指定する以外は通常のカスタムオブジェ クトとあまり変わらない ◦ API参照名には「__x」が付加される ◦ 作成直後は外部IDと表示URLだけが項目として設定されて おり、各フィールドは手動でカスタム項目として追加する必要 がある データ型等を指定できる 大文字小文字の差異に注意($metadataでフィールド名を確認 しながら設定を行うと良い) ◦ 他の外部オブジェクトや標準/カスタムオブジェクトに対して 参照関係が設定できる 多分、通常の参照/親子関係と同じ感覚で使用できると思う
12.
Car#maker_id ->
Maker#maker_idの参照関係 を設定した例(デフォルトのまま)
13.
サブクエリ等も使えるがSOQLとして正しくてもエラー となるケースもあるらしい 成功するクエリの例 ◦
SELECT car_name__c, maker__r.maker_name__c FROM car__x WHERE maker__r.maker_name__c = 'HONDA’
14.
EXTERNAL_OBJECT_UNSUPPORTED_EXCEPTION ◦ LIKE検索で発生 ◦
ODataのfilterにLIKE構文はない QUERY_TOO_COMPLICATED ◦ 参照テーブルにLIKE構文を使用したらエラーコードが変わっ た ◦ これもfilterの制限と思われる 原理的にODataでサポートしていない検索はできないはず
15.
http://flect-odata- test.herokuapp.com/odata/Cars?$filter=inde xof(Car_name, ‘WING’)
eq 0 仕様にあるfilterのindexofとか実装されていない。 ただし、SalesforceからのOdata APIのキックでOlingo側の 未実装が問題となるケースには遭遇していない
16.
External Datasourceの設定画面にこんな項目がある
多分filterのカスタム関数を自前で作ればそれが使えるんだと 思う この辺を参考にすれば実装できそう http://olingo.apache.org/doc/odata2/tutorials/Olingo_T utorial_AdvancedRead_FilterVisitor.html 必要に迫られれば作る(PullRequest歓迎)
17.
https://github.com/shunjikonishi/odata- producer をフォーク
環境変数DATABASE_URLに接続先のPostgreSQLの URLを定義 ◦ 現在はPostgreSQL固定になっているので、MySQL等を使う場合 はHerokuEntityManagerFactoryとpersistense.xmlの修正が 必要 サンプルエンティティ(src/…/entities/*.java)を削除 公開したいエンティティをentities以下に定義 いじょ ◦ ローカルでの動作確認はrun.sh(run.bat)でできます。 ◦ Herokuで動かす場合は環境変数「APP_OPTS」でBASIC認証が 設定できます。
18.
JPAのエンティティとして定 義する ◦ Lombokが入っているので getter/setterは不要
余計な修飾は一切いらな い ◦ OneToManyとか ManyToOneとかは Salesforce側で解決される ので不要 ◦ 下手に付けるとOlingoがエ ラーで落ちることがある ◦ @Columnでフィールド名を 変更しても良いけど Salesforce側でも設定でき るのであまり意味はない
19.
紆余曲折あったが、結局のところ公式ドキュメント (http://olingo.apache.org/doc/odata2/index.htm l)のJPAの章ほぼそのままで動いた ただしデフォルトでは例外発生時にStackTraceがでない のでそこだけは手を入れた方が良い ◦
MyODataJPAServiceFactory#getCallback参照 ◦ 当初OneToManyの定義が書き方によって動かなくて、原因を特 定するのにえらい苦労した フックポイントは多いので多分何でもできるはず ◦ ODataの仕様書をちゃんと読めばね。。。。 ◦ ちょいちょいNot implementedを見かけるがそれも自力で解決で きると思われる ちゃんと使おうと思ったら絶対ソースは読むべき(基本)
20.
とりあえずSalesforceから参照可能なODataProducerを 作るだけなら難しくはない ◦ 現状一番の問題はLIKEが使えないこと ◦
認証がBASIC認証だけで良いかは課題 HerokuのOAuthを使っても良いけどあんまり意味が無い気がする ◦ パフォーマンス、実用性などは実案件に即した検証が必要 V4の今後がどうなるかは謎なので現状V2でどこまで作り 込むべきかは不明 ◦ 1年以内にV4が来るならV2での実装は不要と思う ◦ しかしOlingoのV4ドキュメントは現状ほとんどない。。。(-- OData自体はSalesforceと関係なくWatchする価値のあ る技術
Download now