短時間で学ぶサーバ設定術
Technology
http://icampusj.net/blogs/server/feed/entries/atom
2020-05-28T11:33:43+09:00
Apache Roller
http://icampusj.net/blogs/server/entry/differences-of-mathml-mfenced-tag
Differences of MathML MFENCED Tag for Firefox and Safari
e-Manabix
2020-05-28T11:06:56+09:00
2020-05-28T11:33:43+09:00
<h1>MathML MFENCED タグの差異</h1>
<p>
新型コロナ(COVID-19)の影響で、遠隔教育が必要になり、MathML (Mathematical Markup Language)で行列や行列式の試験問題を作ったところ、学生から数式が正しく表示できないとの指摘を受けました。
<br>
調べたところ、以下の表のように、パソコン版のFirefoxでは、MFENCEDタグが対応していないことが分かりました。
<p>
<table border="1">
<tr align="center"><td colspan="4"><mfenced open="|" close="|"></td></tr>
<tr align="center"><td colspan="2">PCs</td><td colspan="2">Smart Phones</td></tr>
<tr align="center"><td>PC Firefox</td><td>Mac OS Safari</td><td>Android Firefox</td><td>iOS Safari</td></tr>
<tr align="center"><td bgcolor="pink">NG</td><td bgcolor="lightblue">OK</td><td bgcolor="lightblue">OK</td><td bgcolor="lightblue">OK</td></tr>
</table>
<p>
このため、パソコンのFirefoxで、行列や行列式を正しく表示する方法を、以下のようにまとめました。<br>
なお、Firefoxの仕様は変わることが考えられますので、ご注意ください。
<p>
<table border="1">
<tr align="center"><td width="15%"><font size="-2">Equations</font><br><a href="/u/akanji.jsp?k=数">数<a href="/u/akanji.jsp?k=式">式</a></td><td width="15%"><font size="-2">Browsers</font></td><td width="25%">MathML</td><td width="45%">HTML</td></tr>
<tr align="center"><td rowspan="3"><font size=-2">Matrix<br><a href="/u/akanji.jsp?k=行">行<a href="/u/akanji.jsp?k=列">列</a></font></td>
<td><font size="-2">PC<br>Firefox</font></td><td>
<math>
<mfenced>
<mrow>
<mo>(</mo>
<mtable>
<mtr><mtd><mi>2</mi></mtd><mtd><mi>3</mi></mtd></mtr>
<mtr><mtd><mi>4</mi></mtd><mtd><mi>5</mi></mtd></mtr>
</mtable>
<mo>)</mo>
</mrow>
</mfenced>
</math>
</td><td align="left"><pre><math>
<mfenced>
<mrow>
<mo>(</mo>
<mtable>
<mtr><mtd><mi>2</mi></mtd>
<mtd><mi>3</mi></mtd></mtr>
<mtr><mtd><mi>4</mi></mtd>
<mtd><mi>5</mi></mtd></mtr>
</mtable>
<mo>)</mo>
</mrow>
</mfenced>
</math>
</pre></td></tr>
<tr align="center"><td><font size="-2">Android<br>Firefox<br>and<br>Safari</font></td><td>
<math>
<mfenced>
<mrow>
<mtable>
<mtr><mtd><mi>2</mi></mtd><mtd><mi>3</mi></mtd></mtr>
<mtr><mtd><mi>4</mi></mtd><mtd><mi>5</mi></mtd></mtr>
</mtable>
</mrow>
</mfenced>
</math>
</td><td align="left"><pre><math>
<mfenced>
<mrow>
<mtable>
<mtr><mtd><mi>2</mi></mtd>
<mtd><mi>3</mi></mtd></mtr>
<mtr><mtd><mi>4</mi></mtd>
<mtd><mi>5</mi></mtd></mtr>
</mtable>
</mrow>
</mfenced>
</math></pre></td></tr>
<tr align="center"><td><font size="-2">Firefox<br>and<br>Safari</font></td><td>
<math>
<mrow>
<mo>(</mo>
<mtable>
<mtr><mtd><mi>2</mi></mtd><mtd><mi>3</mi></mtd></mtr>
<mtr><mtd><mi>4</mi></mtd><mtd><mi>5</mi></mtd></mtr>
</mtable>
<mo>)</mo>
</mrow>
</math>
</td><td align="left"><pre><math>
<mrow>
<mo>(</mo>
<mtable>
<mtr><mtd><mi>2</mi></mtd>
<mtd><mi>3</mi></mtd></mtr>
<mtr><mtd><mi>4</mi></mtd>
<mtd><mi>5</mi></mtd></mtr>
</mtable>
<mo>)</mo>
</mrow>
</math></pre></td></tr>
<tr align="center"><td rowspan="3"><font size="-3">Determinant<p><a href="/u/akanji.jsp?k=行">行<a href="/u/akanji.jsp?k=列">列</a><a href="/u/akanji.jsp?k=式">式</a></font></td>
<td><font size="-2">PC<br>Firefox</font></td><td>
<math>
<mfenced>
<mrow>
<mo>|</mo>
<mtable>
<mtr><mtd><mi>a</mi></mtd><mtd><mi>b</mi></mtd></mtr>
<mtr><mtd><mi>c</mi></mtd><mtd><mi>d</mi></mtd></mtr>
</mtable>
<mo>|</mo>
</mrow>
</mfenced>
</math>
</td><td align="left"><pre><math>
<mfenced>
<mrow>
<mo>|</mo>
<mtable>
<mtr><mtd><mi>a</mi></mtd>
<mi>b</mi></mtd><mtd></mtr>
<mtr><mtd><mi>c</mi></mtd>
<mtd><mi>d</mi></mtd></mtr>
</mtable>
<mo>|</mo>
</mrow>
</mfenced>
</math></pre></td></tr>
<tr align="center"><td><font size="-2">Android<br>Firefox<br>and<br>Safari</size></td><td>
<math>
<mfenced open="|" close="|">
<mtable>
<mtr><mtd><mi>a</mi></mtd><mtd><mi>b</mi></mtd></mtr>
<mtr><mtd><mi>c</mi></mtd><mtd><mi>d</mi></mtd></mtr>
</mtable>
</mfenced>
</math>
</td><td align="left"><pre><math>
<mfenced open="|" close="|">
<mtable>
<mtr><mtd><mi>a</mi></mtd>
<mtd><mi>b</mi></mtd></mtr>
<mtr><mtd><mi>c</mi></mtd>
<mtd><mi>d</mi></mtd></mtr>
</mtable>
</mfenced>
</math></pre></td></tr>
<tr align="center"><td><font size="-2">Firefox<br>and<br>Safari</font></td><td>
<math>
<mrow>
<mo>|</mo>
<mtable>
<mtr><mtd><mi>a</mi></mtd><mtd><mi>b</mi></mtd></mtr>
<mtr><mtd><mi>c</mi></mtd><mtd><mi>d</mi></mtd></mtr>
</mtable>
<mo>|</mo>
</mrow>
</math>
</td>
<td align="left"><pre><math>
<mrow>
<mo>|</mo>
<mtable>
<mtr><mtd><mi>a</mi></mtd>;
<mi>b</mi></mtd><mtd></mtr>
<mtr><mtd><mi>c</mi></mtd>
<mi>d</mi></mtd><mtd></mtr>
</mtable>
<mo>|</mo>
</mrow>
</math></pre></td></tr></table>
<p>
<p>
Links / リンク<br>
<ol>
<li><a href="https://developer.mozilla.org/en-US/docs/Web/MathML/Element">
MathML Element Reference</a> (Nov., 2019) in English
<li><a href="https://developer.mozilla.org/ja/docs/Web/MathML/Element">MathML 要素リファレンス</a> (Mar., 2019) in Japanese
<p>
<li><a href="https://developer.mozilla.org/en-US/docs/Web/MathML/Attribute">MathML Attribute Reference</a> (Nov., 2019) in English
<li><a href="https://developer.mozilla.org/ja/docs/Web/MathML/Attribute">MathML属性リファレンス</a> (Mar., 2019) in Japanese
<p>
<li><a href="https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mfenced"><mfecnced> Element</a> (Jan., 2020) in English
<li><a href="https://developer.mozilla.org/ja/docs/Web/MathML/Element/mfenced"><mfecnced>要素</a> (Nov., 2019) in Japanese
</ol>
http://icampusj.net/blogs/server/entry/java-se-development-kit-10
Java SE Development Kit 10 Downloads
e-Manabix
2018-04-30T17:01:29+09:00
2019-02-06T22:25:00+09:00
2018年4月に、Java SE Development Kit 10 (SDK 10) が公開され、以下のURLからダウンロード (download)できます。
<p>
<s><a href="https://www.oracle.com/technetwork/java/javase/downloads/jdk10-downloads-4416644.html">https://www.oracle.com/technetwork/java/javase/downloads/jdk10-downloads-4416644.html</a></s>
<p>
なお、Java SE SDK 9の配布は、SDK10の配布に伴って、中止となりました。
<br>
また、2018年9月からは、Java SE SDK 11の配布となり、無償版のOpen SDKと有償版のOracle SDKの配布となるそうです。
<p>
(注)Java SE SDK11は以下からのダウンロードになります。
<br>
<a href="https://www.oracle.com/technetwork/java/javase/downloads/index.html">
https://www.oracle.com/technetwork/java/javase/downloads/index.html</a>
<p>
CentOS 7において、yum を用いたJava SE SDK 9 の削除 (remove)とJava SE SDK 10 のインストール (install)は、以下の手順で実施できます。
<br>
<pre class="prettyprint linenums">
# yum list installed | grep jdk
jdk-9.0.4.x86_64
# yum remove jdk
# yum localinstall jdk-10.0.1_linux-x64_bin.rpm
# java -version
java version "10.0.1" 2018-04-17
</pre>
http://icampusj.net/blogs/server/entry/apache-roller-blog
Apache Roller Blog
e-Manabix
2018-04-17T10:49:58+09:00
2019-02-07T00:17:47+09:00
<link rel="stylesheet" href="/css/prettify.css">
<script src="/js/prettify/prettify.js"></script>
<script src="/js/prettify/lang-css.js"></script>
このブログのために、CentOS7に、Apache Roller 5.2 をインストールしました。
<p>
ドキュメント(roller-install-guide.odt)があるので、簡単にインストールできるだろうと考えていたのですが、ライブラリのバージョン間の不整合で、考えていた以上に時間がかかったので整理しました。
<ol>
<li>ダウンロード / Downloads<br>
注意:JavaSE9にはJavaMail1.6.2に合わせる必要があります。
<p>
<table border="1">
<tr align="center"><th>Items</th><th>Versions</th><th>Remarks</th></tr>
<tr align="center"><td>OS</td>
<td><a href="https://www.centos.org/download/">CentOS7</a></td>
<td><br></td></tr>
<tr align="center"><td>Java SE</td>
<td><a href="https://www.oracle.com/technetwork/java/javase/downloads/jdk9-downloads-3848520.html">9.0.4</a></td>
<td>Jan. 16, 2018</td></tr>
<tr align="center"><td>JavaMail</td>
<td><a href="https://javaee.github.io/javamail/">1.6.2</a></td>
<td>Feb. 12, 2018 for <font color="red">Java SE 9</font></td></tr>
<tr align="center"><td>JavaBeans Activation Framework(JAF)</td>
<td><a href="https://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-java-plat-419418.html">1.1.1</a></td>
<td><br></td></tr>
<tr align="center"><td>Database</td>
<td><a href="https://yum.postgresql.org/repopackages.php">PostgreSQL 10.3</a></td>
<td><br></td></tr>
<tr align="center"><td>JDBC Driver</td>
<td><a href="https://jdbc.postgresql.org">42.2.1</a></td>
<td>Jan. 25, 2018</td></tr>
<tr align="center"><td>Apache Tomcat</td>
<td><a href="https://tomcat.apache.org/download-90.cgi">9.0</a></td>
<td><br></td></tr>
<tr align="center"><td>Apache Roller</td>
<td><a href="https://roller.apache.org/downloads/downloads.html">5.2</a></td>
<td>Nov. 6, 2017</td></tr>
</table>
<p>
<li>インストール / install
<pre class="prettyprint linenums">
$ sudo su
# wget https://www.apache.org/dist/roller/roller-5.2/v5.2.0/roller-release-5.2.0-standard.tar.gz
# gunzip roller-release-5.2.0-standard.tar.gz
# tar xvf roller-release-5.2.0-standard.tar
# mv webapps/roller.war /opt/tomcat/webapps/roller/roller.zip
# unzip /opt/tomcat/webapps/roller/roller.zip
# useradd scott
# passwd scott
# su postgres
$ psql
=> CREATE USER scott login createdb;
=> CREATE DATABASE roller OWNER scott;
=> ¥q
$ exit
# su scott
$ psql roller
roller=> ¥i /opt/tomcat/webapps/roller/WEB-INF/classes/dbscripts/postgresql/createdb.sql
roller=> SELECT * FROM rag_planet;
roller=> ALTER USER scott WITH PASSWORD 'tiger';
roller=> ¥q
$ exit
# exit
</pre>
<p>
<li>ファイル構造 / File Structure
<pre>
/
├── opt/
│ └── rollerdata/
│ ├── mediafiles/
│ ├── searchindex/
│ └── uploads/
├── tomcat/
│ ├── bin/
│ ├── conf/
│ │ └── <font color="red">context.xml</font>
│ ├── lib/
│ │ ├── activation.jar
│ │ ├── javax.mail.jar
│ │ └── postgresql-42.2.1.jar
│ └── webapps/
│ ├── ROOT/
│ │ └── dbtest.jsp
│ └── <font color="red">roller</font>/
│ ├── META-INF/
│ │ └── <s>context.xml-example</s>
│ └── WEB-INF/
│ ├── classes/
│ │ ├── dbscripts/
│ │ │ └── sql/
│ │ │ └── createdb.sql
│ │ └── <font color="red">roller-custom.properties</font>
│ └── lib/
│ └── ?
└── var/
└── log/
└── tomcat/
├── catalina.2018-04-01.log
├── catalina.out
├── localhost_access_log.2018-04-01.txt
└── roller.log
</pre>
Rollerが正しく動作しない原因は、catalina.2018-04-01.log または catalina.out のログに書かれています。
<p>
<li>roller.war
<br>
roller-release-5.2.0-standard.tar
<pre class="prettyprint">
.
├── roller-release-5.2.0
├── LICENSE.txt
├── NOTICE.txt
├── README.md
├── docs
│ ├── roller-install-guide.odt
│ ├── roller-template-guide.odt
│ └── roller-user-guide.odt
└── webapp
└── <font color="red">roller.war</font>
</pre>
<p>
<li>roller-custom.properties
<pre class="prettyprint linenums">
installation.type=manual
database.configurationType=jndi
database.jndi.name=java:comp/env/jdbc/<u>rollerdb</u>
mediafiles.storage.dir=/opt/rollerdata/mediafiles
mediafile.resource.url=/resources
uploads.dir=/opt/rollerdata/uploads
search.index.dir=/opt/rollerdata/searchindex
log4j.appender.roller.File=/var/log/tomcat/roller.log
mail.configurationType=jndi
mail.jndi.name=mail/Session
mail.hostname=mydomain.com
mail.username=scott
</pre>
<p>
<li>context.xml
<pre class="prettyprint linenums">
<resource name="jdbc/<u>rollerdb</u>" auth="container"
type="javax.sql.datasource"
driverclassname="org.postgresql.driver"
url="jdbc:postgresql://localhost:5432/roller"
username="scott"
password="tiger"
maxactive="20"
maxidle="3"
removeabandoned="true"
maxwait="3000" />
</pre>
</ol>
このブログの作成には、<a href="/tools/web.jsp">HTMLタグ変換ツール</a>を用いています。
<script>prettyPrint();</script>