本文を読み飛ばす

Zope: 2.12に乗り換え/ Five Productをupdate

このお盆はFiveのProductをupdateしてました. \ Zope2.12.2/10,2.13.0a2/0a3でいろいろ違いがあったので \ メモしておきます.

  • ZODBが壊れました... \ 復旧したけど1日潰れた...

  • Zope2.12乗り換え

  • Five product

Zope2.12 乗換え

ubuntuを新しくinstallしたものの Fedoraでは手間暇かけて整備したZope環境を一から 作る気にならず.

python2.6で動くZope2.12を検討し始めました.

母艦動かせば特に問題はないんですけど... この機会にZope2.12にいってみようかと.

GlobalModules

bad K/H?

しかしこれが動かないと自作のPythonScriptが なんにも動かなくなるので...

Fiveに乗り換えればなんとかなるんでしょうが, 結構たくさんコードがあって, そんなのんびりコンバートばっかりしたくはないんです.

__init__.py:

-= encoding=utf-8 =-追記

ZSCFile2:

JTracker

JTracker:

package_home -> App.Common

JTracker:

-> Persistance

JTrackerIssue:

package_home -> App.Common

kmemo2

開発中なんですが, なぜか動きません. Unauthorized instanceになります. なんでかな...

私のProductはいろいろ動かなくなりました...

------------- ---- ------------------------------------------------------------ Zope 動作 ============= ==== ============================================================ Zope2.10 ○ 動かなくなりました... ;( よくわからないので検証中 Zope2.12.2 × PageTemplateのmetal-useが動きません, なんでだ. Zope2.12.10 × Zope2.13.0a2 △ configure.zcml修正/unicodeの扱いを修正 Zope2.13.0a3 △ ------------- ---- ------------------------------------------------------------

2.13はまだ早いかと思ったんですが, \ metal-useが動かないのが面倒だったんで \ 2.13にチャレンジ.

2.13でのFive Product変更点

  1. configure.zcmlに <include package="zope.browsercontaner"> を追加

  2. configure.zcmlでIAddのパスを IAdd->IAdd に変更

  3. Unicode関係

Unicode関係はpython2.4->2.6も関係してそうです. \ メモとして書いてますが, Zopeとは関係ないかもしれません.

1 configure.zcmlに <include package="zope.browsercontaner"> を追加

2.13から browser:resource に関連するオブジェクトに アクセスすると ComponentLocationError がでてしまいました.

ググって見るとあまり参考になるものはなかったのですが...

とりあえずbrowserresourceがOFSに移動したというのが わかりましたので include してみました.

仕組みもよくわかってないのでかなり当てずっぽうです.

これで動作し始めます. よかったよかった. \ ちなみにこの問題で3時間程度消費...

2 unicodeの扱いがいろいろ変わってる?

この部分はpython2.4->2.6への移項で変わった部分のようです. \ ただ, ZMI(manage_propertiesForm)でも文字化けしてるんですが...

Productでの情報取り出しは問題ないです.

メモとしてやったことを箇条書します.

  • DTMLMethodを私は多用してます. コード中で

    manage_edit( source, title )

    と, titleをunicodeで渡していましたが2.13でダメになりました.

    manage_edit( source, title.encode( "utf-8" ) )

    これで一応通ってます. manage_edit内の330行

    str( title )

    という一行が気にはなりましたが... (ちなみに2.10から変わってない部分です)

  • manage_editですが, dataの方もUTF-8にencodeしてからでないと ZMIから参照できなくなりました...

  • manage_editPropertiesもencodeしないとだめっぽいです.

  • requestの内容をencodingしてませんでした. \ なんでこれが通ってたのかは不明ですが...

    request.get( "abc", "" ) == u"なんたら"

    encodingしてあげて回避です

    enc = lambda x: unicode( x, context.management_page_charset ) enc( request.get( "abc", "" ) ) == u"なんたら"

    これはちゃんとエラーが見えるようになったのでよかったよかった.

今回はここまで

せっかくお盆明けから稼働! と思ってたんですが, \ 家PC->Note->家PCと環境を移していると \ いろいろ問題がでて会社PCまでもっていけませんでした.

なんとか今週中に稼働できれば...と思うんですが...

Fedora16にZopeを設定する

<span class="small">(up:2012/03/20 16:25:42)</span><br> systemdになったので/etc/init.dに置いていた Zopeを起動するスクリプトが動かなくなりました.

Fedora16でZopeをサービスに登録する 私なりに成功した方法を記して置きます.

コメント

Comments powered by Disqus
宣伝: