私は、 'Layout with Dijit'チュートリアルhttp://dojotoolkit.org/documentation/tutorials/1.7/dijit_layout/ をJSPとして実装しようとしました。DojoToolkitパーサとJSPDojを使用する
マイコードJSPコードがある:
<html xmlns:jsp="http://java.sun.com/JSP/Page">
<jsp:output doctype-root-element="HTML" doctype-system="about:legacy-compat" />
<jsp:directive.page contentType="text/html;charset=UTF-8" />
<jsp:directive.page pageEncoding="UTF-8" />
<head>
<meta charset="utf-8" />
<title>Demo: BorderContainer</title>
<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/dojo/1.7.1/dijit/themes/claro/claro.css" media="screen" />
<script src="http://ajax.googleapis.com/ajax/libs/dojo/1.7.1/dojo/dojo.js" data-dojo-config="async:true, parseOnLoad: true"></script>
<script>
require([ "dijit/layout/BorderContainer", "dijit/layout/ContentPane", "dojo/parser"]);
</script>
</head>
<body class="claro">
<div id="appLayout" class="demoLayout" data-dojo-type="dijit.layout.BorderContainer" data-dojo-props="design: 'headline'">
<div class="centerPanel" data-dojo-type="dijit.layout.ContentPane" data-dojo-props="region: 'center'">
<div>
<p>Lorem ipsum ...</p>
</div>
</div>
<div class="edgePanel" data-dojo-type="dijit.layout.ContentPane" data-dojo-props="region: 'top'">
Header content (top)
</div>
<div id="leftCol" class="edgePanel" data-dojo-type="dijit.layout.ContentPane" data-dojo-props="region: 'left', splitter: true">
Sidebar content (left)
</div>
</div>
</body>
</html>
このHTMLをブラウザ(FireFoxの10.0.2)によってレンダリングされるとJSPエンジン(Tomcatの7.0)によって生成されたHTMLは
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE HTML SYSTEM "about:legacy-compat">
<html>
<head>
<meta charset="utf-8"/>
<title>Demo: BorderContainer</title>
<link media="screen" href="http://ajax.googleapis.com/ajax/libs/dojo/1.7.1/dijit/themes/claro/claro.css" rel="stylesheet"/>
<script data-dojo-config="async:true, parseOnLoad: true" src="http://ajax.googleapis.com/ajax/libs/dojo/1.7.1/dojo/dojo.js"/>
<script>
require(["dijit/layout/BorderContainer","dijit/layout/ContentPane", "dojo/parser"]);
</script>
</head>
<body class="clark">
<div data-dojo-props="design: 'headline'" data-dojo-type="dijit.layout.BorderContainer" class="demoLayout" id="appLayout">
<div data-dojo-props="region: 'center'" data-dojo-type="dijit.layout.ContentPane" class="centerPanel">
<div>
<p>Lorem ipsum ...</p>
</div>
</div>
<div data-dojo-props="region: 'top'" data-dojo-type="dijit.layout.ContentPane" class="edgePanel">
Header content (top)
</div>
<div data-dojo-props="region: 'left', splitter: true" data-dojo-type="dijit.layout.ContentPane" class="edgePanel" id="leftCol">
Sidebar content (left)
</div>
</div>
</body>
</html>
あります何も起こらない。定義されたレイアウトは適用されません。必要なモジュールまで読み込まれません。 'claro.css'と 'dojo.js'のみが読み込まれます。
誰でも私に、生成されたHTMLに何が問題なのかを伝えることができます。
ありがとうございました。 CSSを追加し、閉じる