{"id":7317,"date":"2013-03-11T23:52:23","date_gmt":"2013-03-11T14:52:23","guid":{"rendered":"http:\/\/arison.jp\/blog\/?p=7317"},"modified":"2018-04-26T07:02:58","modified_gmt":"2018-04-25T22:02:58","slug":"ognlobject-graph-navigation-language","status":"publish","type":"post","link":"https:\/\/arison.jp\/blog\/2013\/03\/11\/ognlobject-graph-navigation-language\/","title":{"rendered":"\u3010Java\u3011OGNL(Object Graph Navigation Language)"},"content":{"rendered":"<h3>OGNL<\/h3>\n<p><span class=\"font20px\">OGNL \u3068\u306f\u3001Object Graph Navigation Language \u306e\u7565\u3067\u3042\u308b\u3002<\/span><\/p>\n<p>\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306e\u53c2\u7167\u306f\u30b7\u30e3\u30fc\u30d7\u8a18\u53f7(#)\u3067\u30de\u30fc\u30af\u3055\u308c\u308b\u3002<\/p>\n<p>OGNL\u306b\u95a2\u3059\u308b\u60c5\u5831\u304c\u5c11\u306a\u3059\u304e\u3066\u3001Struts2\u3067\u4f5c\u6210\u3059\u308b\u3046\u3048\u3067\u5927\u5909\u56f0\u308b\u3002<br \/>\nognl.org\u306f\u306a\u304f\u306a\u3063\u3066\u3044\u308b\u3057\u3002<\/p>\n<p><!--more--><\/p>\n<p>OGNL &#8211; Apache Commons OGNL &#8211; Object Graph Navigation Library<br \/>\n<a href=\"http:\/\/commons.apache.org\/proper\/commons-ognl\/\">http:\/\/commons.apache.org\/proper\/commons-ognl\/<\/a><\/p>\n<p>\u3010Action \u30d7\u30ed\u30d1\u30c6\u30a3\u306e\u53c2\u7167\u3011<br \/>\n[xml]<br \/>\n &amp;amp;lt;s:property value=&amp;amp;quot;hoge&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;\/s:property&amp;amp;gt;<br \/>\n[\/xml]<\/p>\n<p> ActionContext \u5185\u306e\u305d\u306e\u4ed6 \u306e(\u30eb\u30fc\u30c8\u3067\u306a\u3044) \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306f\u3001# \u8868\u8a18\u3092\u4f7f\u3063\u3066\u30ec\u30f3\u30c0\u30ea\u30f3\u30b0\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u308b\u3002<br \/>\n[xml]<br \/>\n &amp;amp;lt;s:property value=&amp;amp;quot;#session.hoge&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;\/s:property&amp;amp;gt;<br \/>\n &amp;amp;lt;s:property value=&amp;amp;quot;#session[&#8216;hoge&#8217;]&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;\/s:property&amp;amp;gt;<br \/>\n &amp;amp;lt;s:property value=&amp;amp;quot;#request[&#8216;hoge&#8217;]&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;\/s:property&amp;amp;gt;<br \/>\n[\/xml]<\/p>\n<p>\u3010\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 (Maps\u3001 Lists\u3001 Sets)\u3011<\/p>\n<p>\u30ea\u30b9\u30c8\u306e\u69cb\u6587\u306f\u3001 {e1,e2,e3}\u3067\u3042\u308b\u3002<br \/>\n\u3053\u306e\u8868\u73fe\u306b\u3088\u308a\u8981\u7d20\u3068\u3057\u3066\u6587\u5b57\u5217\u306e&#8221;name1&#8243;\u3001 &#8220;name2&#8243; \u3001&#8221;name3&#8243;\u304c\u542b\u307e\u308c\u308b\u30ea\u30b9\u30c8\u304c\u751f\u6210\u3055\u308c\u308b\u3002<br \/>\n\u307e\u305f\u30c7\u30d5\u30a9\u30eb\u30c8\u3067&#8221;name2&#8243;\u304c\u9078\u629e\u3055\u308c\u3066\u3044\u308b\u3002<br \/>\n[xml]<br \/>\n &amp;amp;lt;s:select label=&amp;amp;quot;label&amp;amp;quot; name=&amp;amp;quot;name&amp;amp;quot; list=&amp;amp;quot;{&#8216;name1&#8242;,&#8217;name2&#8242;,&#8217;name3&#8217;}&amp;amp;quot; value=&amp;amp;quot;%{&#8216;name2&#8217;}&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;\/s:select&amp;amp;gt;<br \/>\n[\/xml]<br \/>\n\u30de\u30c3\u30d7\u306e\u69cb\u6587\u306f\u3001#{key1:value1,key2:value2}\u3067\u3042\u308b\u3002<br \/>\n\u3053\u306e\u8868\u73fe\u306b\u3088\u308a\u8981\u7d20\u3068\u3057\u3066\u6587\u5b57&#8221;foo&#8221; \u306b\u306f\u6587\u5b57 &#8220;foovalue&#8221;\u304c\u3001&#8221;bar&#8221; \u306b\u306f\u6587\u5b57 &#8220;barvalue&#8221;\u304c\u8a2d\u5b9a\u3055\u308c\u308b\u3002<br \/>\n[xml]<br \/>\n&amp;amp;lt;s:select label=&amp;amp;quot;label&amp;amp;quot; name=&amp;amp;quot;name&amp;amp;quot; list=&amp;amp;quot;#{&#8216;foo&#8217;:&#8217;foovalue&#8217;, &#8216;bar&#8217;:&#8217;barvalue&#8217;}&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;\/s:select&amp;amp;gt;<br \/>\n[\/xml]<\/p>\n<p>\u30ab\u30b9\u30bf\u30e0\u30bf\u30b0\u304a\u3088\u3073OGNL\u306e\u4e2d\u306b\u30ab\u30b9\u30bf\u30e0\u30bf\u30b0\u306f\u52d5\u4f5c\u3057\u306a\u3044\u306e\u3067\u6ce8\u610f\u3002 <\/p>\n<p>\u3010\u53c2\u8003\u30b5\u30a4\u30c8\u3011<\/p>\n<p>OGNL &#8211; \u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u6280\u8853\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3092\u52dd\u624b\u306b\u7ffb\u8a33<br \/>\n<a href=\"http:\/\/www.techdoctranslator.com\/struts2\/tag-developers-guide\/ognl\" target=\"_blank\">http:\/\/www.techdoctranslator.com\/struts2\/tag-developers-guide\/ognl<\/a><\/p>\n<p>Struts2\u306e\u30ab\u30b9\u30bf\u30e0\u30bf\u30b0\u5185\u3067\u7528\u3044\u308bOGNL\u5f0f\uff1f\u306b\u3064\u3044\u3066 &#8211; Java Solution\u4f1a\u8b70\u5ba4<br \/>\nhttp:\/\/ap.atmarkit.co.jp\/bbs\/core\/fjava\/32623<\/p>\n<p>How do we get access to the session<br \/>\nhttp:\/\/struts.apache.org\/release\/2.2.x\/docs\/how-do-we-get-access-to-the-session.html<\/p>\n","protected":false},"excerpt":{"rendered":"<p>OGNL OGNL \u3068\u306f\u3001Object Graph Navigation Language \u306e\u7565\u3067\u3042\u308b\u3002 \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306e\u53c2\u7167\u306f\u30b7\u30e3\u30fc\u30d7\u8a18\u53f7(#)\u3067\u30de\u30fc\u30af\u3055\u308c\u308b\u3002 OGNL\u306b\u95a2\u3059\u308b\u60c5\u5831\u304c\u5c11\u306a\u3059\u304e\u3066\u3001Struts2\u3067\u4f5c\u6210\u3059\u308b [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":17178,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6,4],"tags":[703,120],"class_list":["post-7317","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-programming","category-diary","tag-java","tag-struts2"],"_links":{"self":[{"href":"https:\/\/arison.jp\/blog\/wp-json\/wp\/v2\/posts\/7317","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/arison.jp\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/arison.jp\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/arison.jp\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/arison.jp\/blog\/wp-json\/wp\/v2\/comments?post=7317"}],"version-history":[{"count":0,"href":"https:\/\/arison.jp\/blog\/wp-json\/wp\/v2\/posts\/7317\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/arison.jp\/blog\/wp-json\/wp\/v2\/media\/17178"}],"wp:attachment":[{"href":"https:\/\/arison.jp\/blog\/wp-json\/wp\/v2\/media?parent=7317"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/arison.jp\/blog\/wp-json\/wp\/v2\/categories?post=7317"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/arison.jp\/blog\/wp-json\/wp\/v2\/tags?post=7317"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}