EclipseでPlugin開発をしている時に、バンドル間の依存関係を知りたい時、どうやってみるか?
以下のPluginタブを開く
で、依存性を確認したいバンドル上で右クリックして、"Open Dependencies"をクリックすると
下図みたいな感じで、依存関係がわかる。
ちなみに、上のタブの端っこに
こんなアイコンがあるが、これで依存性の向きを指定できる。
ラベル
RoR
WSUS
MECM
SCCM
環境構築
WindowsServer2016
更新プログラム
Python
Eclipse
GAE
Macports
AWS
Django
GoCilpse
Hibernate
PeerCache
SQL
SSL
SchUseStrongCrypto
TLS
VPN
WindowsServer2019
bootstrap
emacs
gcc
git
go
haml
react
AmazonSES
Apache Derby
BranchCache
CB2207
CleanCode
Database
Defender
DeltaDownload
Edge
EffectiveJava
GPO
MAILER-DAMON
MCM
RC4
RDS
Report
ReportingServices
Route53
SQLServer2017
Spring
StreamCipher
SupportBlog
Vagrant
Wireshark
WorkMail
Xcode
amazon
android
ccmcache
certificate
gdb
golang
oauth
pg
registry
sup
w3wp
webapp
イネーブルメントパッケージ
インプレースアップグレード
バージョン管理
帯域外リリース
有効化パッケージ
東プレ
配布ポイント
2012年11月28日水曜日
2012年11月19日月曜日
VirtualBoxでBridge接続
NATとか、HostOnly接続とか、それぞれがホストOSとどのようにつながるかは、他のサイトを参考にしてもらい、ここでは、Bridge接続をするときの注意だけ書きます。
まず、以下環境。
MacOS 10.6.8
VritualBox 4.2.4
CentOS 6.3
MacOSはWifiでつながっているが、MACアドレス指定して、固定IPがふられています。
#これはRouterの設定でできました。私のRouterはNECのatermです。
取りあえず、VirtualBoxインストールして、CentOS入れます。
そこで、CentOSを起動する前に、Networkの設定をいじります。
といっても、NAT接続(恐らくデフォルト)になっているものを、Bridgeに変えるだけ。
ただ、ここでNICを指定するのだが、私はAirPortの記載があったNICを指定しました。
で、CentOSをインストール。
これでうまくつながるはず。
つながらない場合は、CentOSを入れ直すことはしなくても、以下のファイルをいじって
rebootとか、/etc/init.d/network restartすれば大丈夫。
でもはまったのが、NICをどうやって認識させるか、という事。
以下コマンドで解決!
/etc/sysconfig/network-script/ifcfg-eth0
を認識させるには
ifup eth0
逆に認識させないようにするには
ifdown eth0
でOK。
確認はifconfigでどうぞ。
まず、以下環境。
MacOS 10.6.8
VritualBox 4.2.4
CentOS 6.3
MacOSはWifiでつながっているが、MACアドレス指定して、固定IPがふられています。
#これはRouterの設定でできました。私のRouterはNECのatermです。
取りあえず、VirtualBoxインストールして、CentOS入れます。
そこで、CentOSを起動する前に、Networkの設定をいじります。
といっても、NAT接続(恐らくデフォルト)になっているものを、Bridgeに変えるだけ。
ただ、ここでNICを指定するのだが、私はAirPortの記載があったNICを指定しました。
で、CentOSをインストール。
これでうまくつながるはず。
つながらない場合は、CentOSを入れ直すことはしなくても、以下のファイルをいじって
rebootとか、/etc/init.d/network restartすれば大丈夫。
でもはまったのが、NICをどうやって認識させるか、という事。
以下コマンドで解決!
/etc/sysconfig/network-script/ifcfg-eth0
を認識させるには
ifup eth0
逆に認識させないようにするには
ifdown eth0
でOK。
確認はifconfigでどうぞ。
2012年11月7日水曜日
JIRAをMySQLで
【環境】
mysql -u root -p
でmysqlに入る。
◆Userの追加
Userを追加するために、以下を実行。(DBName: jiradb, UserName: jiradbuser)
#e.g. <ipaddress> = 192.168.0.1
mysql> GRANT ALL PRIVILEGES ON jiradb.* TO jiradbuser@<ipaddress> IDENTIFIED
BY 'password';
確認のため、以下のコマンドを。
select user, host from mysql.user
これで、↓みたいな感じで、登録できたら成功。
+----------------+-----------------+
| user | host |
+----------------+-----------------+
| root | 127.0.0.1 |
| jiradbuser | 192.168.0.1 |
| root | localhost |
+----------------+-----------------+
◆DBの追加
以下のコマンドを実行するだけ。
CentOS: 6.3
JIRA: 5.1.8
MySQLでUserを追加するために、mysql -u root -p
でmysqlに入る。
◆Userの追加
Userを追加するために、以下を実行。(DBName: jiradb, UserName: jiradbuser)
#e.g. <ipaddress> = 192.168.0.1
mysql> GRANT ALL PRIVILEGES ON jiradb.* TO jiradbuser@<ipaddress> IDENTIFIED
BY 'password';
確認のため、以下のコマンドを。
select user, host from mysql.user
これで、↓みたいな感じで、登録できたら成功。
+----------------+-----------------+
| user | host |
+----------------+-----------------+
| root | 127.0.0.1 |
| jiradbuser | 192.168.0.1 |
| root | localhost |
+----------------+-----------------+
◆DBの追加
以下のコマンドを実行するだけ。
CREATE DATABASE jiradb CHARACTER SET utf8 COLLATE utf8_bin;
確認したければ、"show databases;"で。
◆Connectorの追加
私の環境ではすでに入っていたので、省略。本家参照。(ページの最後に追加)
◆ConnectionTest
Consoleから、以下のコマンドを叩くだけ。
/<InstallDirectory>/jira/bin/config.sh
画面に従って操作する。 ↓な感じ。太字が入力項目。
--- Main Menu ---
[H] Configure JIRA Home
[D] Database Selection
[A] Advanced Settings
[S] Save and Exit
[X] Exit without Saving
Main Menu> D
--- Database Selection ---
Database Type : MySQL
Instance :
192.168.0.1:3306/jiradb
Connect As : jiradbuser / *****
* [H] HSQL (not for production use)
[M] MySQL
[O] Oracle
[P] PostgreSQL
[S] SQL Server (MS-SQL)
[X] Return to Main Menu
Database Selection [H]> M
MySql Database Configuration.
Hostname ()>
192.168.0.1
Port ()> 3306
Database ()> jiradb
Username ()> jiradbuser
Password ()>
Test Connection ([Y]/N)? > Y
Attempting to connect to 192.168.0.1:3306/jiradb
Connection successful!
このセットアップが終わって、やっとJIRAのSetup画面からDB接続ができるようになる。
参照サイト
https://confluence.atlassian.com/display/JIRA/Connecting+JIRA+to+MySQL
ConfluenceとApacheHTTP連携
【OS】
CentOS 6.3
【前提】
ApacheHTTP側はすでにPort80で受け入れ可能であること
Confluece(4.3.2)が動作できること
【やりたいこと】
http://<Your Location>:8090
でアクセスするのを、
http://<Your Location>/confluence
でアクセスできるようにする。
【解説】
◆Confluence内のTomcatのserver.xmlを修正
<confluence install directory>/conf/server.xml
を開く。
- Connectorの記述を、水色字を追加する。
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector" port="8090" minProcessors="5"
maxProcessors="75"
enableLookups="false" redirectPort="8443" acceptCount="10" debug="0" connectionTimeout="20000"
useURIValidationHack="false" URIEncoding="UTF-8" protocol="AJP/1.3" />
- Context pathの記述を、水色字のように修正する。
<Context path="/confluence" docBase="../confluence" debug="0" reloadable="true" useHttpOnly="true">
◆Apache側のhttpd.confを修正
CentOS6の場合は、"/etc/httpd/conf/httpd.conf"にあるはず。
で、それを開いて
最下段に以下の1行を追加。
Include conf/extra/httpd-proxy.conf
◆Apache側のhttpd-proxy.confを修正 or 新規作成
/etc/httpd/conf/extra/httpd-proxy.confファイルを開く。
#extraフォルダ、httpd-proxy.confファイルがない場合は新規で作成する。
開いたら、以下の3行を追加する。
#Port:8090はConflueceのDefault。
<Location /confluence>
ProxyPass ajp://<Your Location>:8090/confluence
</Location>
◆仕上げ
設定が終わったら、"sudo apachectl graceful"を忘れずに。
ブラウザから、"http://<Your Location>/confluence
でConfluenceにアクセスできるはず。
CentOS 6.3
【前提】
ApacheHTTP側はすでにPort80で受け入れ可能であること
Confluece(4.3.2)が動作できること
【やりたいこと】
http://<Your Location>:8090
でアクセスするのを、
http://<Your Location>/confluence
でアクセスできるようにする。
【解説】
◆Confluence内のTomcatのserver.xmlを修正
<confluence install directory>/conf/server.xml
を開く。
- Connectorの記述を、水色字を追加する。
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector" port="8090" minProcessors="5"
maxProcessors="75"
enableLookups="false" redirectPort="8443" acceptCount="10" debug="0" connectionTimeout="20000"
useURIValidationHack="false" URIEncoding="UTF-8" protocol="AJP/1.3" />
- Context pathの記述を、水色字のように修正する。
<Context path="/confluence" docBase="../confluence" debug="0" reloadable="true" useHttpOnly="true">
◆Apache側のhttpd.confを修正
CentOS6の場合は、"/etc/httpd/conf/httpd.conf"にあるはず。
で、それを開いて
最下段に以下の1行を追加。
Include conf/extra/httpd-proxy.conf
◆Apache側のhttpd-proxy.confを修正 or 新規作成
/etc/httpd/conf/extra/httpd-proxy.confファイルを開く。
#extraフォルダ、httpd-proxy.confファイルがない場合は新規で作成する。
開いたら、以下の3行を追加する。
#Port:8090はConflueceのDefault。
<Location /confluence>
ProxyPass ajp://<Your Location>:8090/confluence
</Location>
◆仕上げ
設定が終わったら、"sudo apachectl graceful"を忘れずに。
ブラウザから、"http://<Your Location>/confluence
でConfluenceにアクセスできるはず。
2012年11月6日火曜日
Spring-Axis2連携 on OSGi 其の2(完結)
其の1の続き
java.lang.ClassNotFoundException: org.apache.axis2.extensions.spring.receivers.SpringServletContextObjectSupplier
のExceptionが出ていたので、SpringServletContextObjectSupplierクラスを参照したけど、よくわからん。
なので、親クラスのSpringObjectSupplierをみると、public static Object createServiceObject(final AxisService service) な
メソッドがあるではないか!
そして、このメソッド見たら、こんな文字が!(下の赤字)
/** * Create a service object for a given service. The method first looks for * the {@link Constants#SERVICE_OBJECT_SUPPLIER} service parameter and if * this parameter is present, it will use the specified class to create the * service object. If the parameter is not present, it will create an * instance of the class specified by the {@link Constants#SERVICE_CLASS} * parameter. * * @param service * the service * @return The service object or <code>null</code> if neither the * {@link Constants#SERVICE_OBJECT_SUPPLIER} nor the * {@link Constants#SERVICE_CLASS} parameter was found on the * service, i.e. if the service doesn't specify how to create a * service object. If the return value is non null, it will always * be a newly created instance. * @throws AxisFault * if an error occurred while attempting to instantiate the * service object */
つまり、他のサイトなどで参考にしていたServiceObjectSupplierの指定を外せば、
ServiceClassのインスタンスを生成してくれると!
そして、ServiceClassはwsdlでservices.xmlを生成した際に記述済み!
という事で、ServiceObjectSupplierの記載をservices.xmlからコメントアウトすると、
今度は以下のException
[ERROR][11/06/2012 20:14:26:883] loader constraint violation: loader (instance of org/eclipse/osgi/internal/baseadaptor/DefaultClassLoader) previously initiated loading for a different type with name "javax/activation/DataHandler" (org.apache.axis2.transport.http.AxisServlet) java.lang.LinkageError: loader constraint violation: loader (instance of org/eclipse/osgi/internal/baseadaptor/DefaultClassLoader) previously initiated loading for a different type with name "javax/activation/DataHandler" at java.lang.Class.getDeclaredFields0(Native Method) at java.lang.Class.privateGetDeclaredFields(Class.java:2291) at java.lang.Class.getDeclaredFields(Class.java:1743)
...
何やら、javax/activation/DataHandlerが怪しいなー、という事で、javax.actionvationを文字列検索して
ヒットした、com.springsource.javax.activationバンドルをRequired Plug-insに追加して再起動!
目的のメソッドにデータが受信できた!!!
※このBundleを起動する前に、WebServerBundle(Jetty等)を起動しておかないと、Serviceの登録ができていないため、Serviceがちゃんと動きません。
2012年11月1日木曜日
Spring-Axis2連携 on OSGi 其の1
備忘録として。
まず、既存のPlatformにSpringFrameworkでAxis2連携に必要なモジュールがなかった。。。
→ http://www.springsource.org/
から、サイトの右下にある、以下の図の"Spring Framework"を選択。
今回は、他のjarが3.0.3を使用していたので合わせるために、以下の図の3.0.3をダウンロード。
何が足りなかったかは後で調査するとして、解凍したJar群をTargetPlatformにぶち込む。
また、Axis2本家のサイトの下の方に隠れてServiceLifeSycleの記載が!
→ http://axis.apache.org/axis2/java/core/docs/spring.html
さらりと
なクラスを作ってね!って書いてある。。。
取りあえずそのクラス作って、services.xmlに以下の記述を追加してOSGi起動!
<service name="SpringAwareService" class="spring.SpringInit">
それとなく動いたものの、なぜかspring-bean.xsdがねーよ!と怒られる。
↓
とりあえず、いろいろ調べたところ、META-INF/以下に以下のファイルを置くのがよさそう。
ちなみにこのファイルは、Springのサイトからダウンロードした時に含まれている、 "org.springframework.beans-3.0.3.RELEASE.jar"の中のMETA-INFの中にあるものを流用。
ここでOSGi起動!したが、なぜか、org.springframework.beans.factoryなんちゃらで怒られた。
原因は、"org.springframework.beans"バンドルをRequiredPlug-insではなくImportedPackagesでImportしていたから。
なので、RequiredPlug-insでrequireしてOSGi起動!
続き
http://dah8ra.blogspot.jp/2012/11/spring-axis2-on-osgi_6.html
まず、既存のPlatformにSpringFrameworkでAxis2連携に必要なモジュールがなかった。。。
→ http://www.springsource.org/
から、サイトの右下にある、以下の図の"Spring Framework"を選択。
今回は、他のjarが3.0.3を使用していたので合わせるために、以下の図の3.0.3をダウンロード。
何が足りなかったかは後で調査するとして、解凍したJar群をTargetPlatformにぶち込む。
また、Axis2本家のサイトの下の方に隠れてServiceLifeSycleの記載が!
→ http://axis.apache.org/axis2/java/core/docs/spring.html
さらりと
public class SpringInit implements ServiceLifeCycle {
なクラスを作ってね!って書いてある。。。
取りあえずそのクラス作って、services.xmlに以下の記述を追加してOSGi起動!
<service name="SpringAwareService" class="spring.SpringInit">
それとなく動いたものの、なぜかspring-bean.xsdがねーよ!と怒られる。
↓
[ WARN][11/07/2012 10:35:38:594] Ignored XML validation warning (org.springframework.beans.factory.xml.XmlBeanDefinitionReader) org.xml.sax.SAXParseException: schema_reference.4: Failed to read schema document 'http://www.springframework.org/schema/beans/spring-beans.xsd', because 1) could not find the document; 2) the document could not be read; 3) the root element of the document is not <xsd:schema>. at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.warning(ErrorHandlerWrapper.java:96) at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:380) at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:318) at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.reportSchemaErr(XSDHandler.java:2541) at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.reportSchemaWarning(XSDHandler.java:2532) at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.getSchemaDocument(XSDHandler.java:1836) at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.parseSchema(XSDHandler.java:531) at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaLoader.loadSchema(XMLSchemaLoader.java:552) at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.findSchemaGrammar(XMLSchemaValidator.java:2436) at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.handleStartElement(XMLSchemaValidator.java:1781) at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.startElement(XMLSchemaValidator.java:705) at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3103) at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:922) at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648) at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:511) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:808) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:119) at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:235) at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:284) at org.springframework.beans.factory.xml.DefaultDocumentLoader.loadDocument(DefaultDocumentLoader.java:75) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:388) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:334) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:302) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:143) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:178) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:149) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:212) at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:126) at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:92) at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:130) at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:467) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:397) at spring.SpringInit.startUp(SpringInit.java:23) at org.apache.axis2.deployment.ServiceBuilder.loadServiceLifeCycleClass(ServiceBuilder.java:526) at org.apache.axis2.deployment.ServiceBuilder.populateService(ServiceBuilder.java:213) at org.apache.axis2.osgi.deployment.OSGiServiceGroupBuilder.populateServiceGroup(OSGiServiceGroupBuilder.java:107) at org.apache.axis2.osgi.deployment.ServiceRegistry.addServices(ServiceRegistry.java:112) at org.apache.axis2.osgi.deployment.ServiceRegistry.register(ServiceRegistry.java:49) at org.apache.axis2.osgi.deployment.tracker.BundleTracker$1.bundleChanged(BundleTracker.java:70) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:919) at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:227) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:337) org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 4 in XML document from class path resource [META-INF/applicationContext.xml] is invalid; nested exception is org.xml.sax.SAXParseException: cvc-elt.1: Cannot find the declaration of element 'beans'. at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:396) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:334) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:302) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:143) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:178) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:149) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:212)
とりあえず、いろいろ調べたところ、META-INF/以下に以下のファイルを置くのがよさそう。
spring.schemas
spring.handlers
#さっきのSpringInitの中の実装でも見にいってるし。
ちなみにこのファイルは、Springのサイトからダウンロードした時に含まれている、 "org.springframework.beans-3.0.3.RELEASE.jar"の中のMETA-INFの中にあるものを流用。
ここでOSGi起動!したが、なぜか、org.springframework.beans.factoryなんちゃらで怒られた。
原因は、"org.springframework.beans"バンドルをRequiredPlug-insではなくImportedPackagesでImportしていたから。
なので、RequiredPlug-insでrequireしてOSGi起動!
java.lang.ClassNotFoundException: org.apache.axis2.extensions.spring.receivers.SpringServletContextObjectSupplier
続き
http://dah8ra.blogspot.jp/2012/11/spring-axis2-on-osgi_6.html
登録:
投稿 (Atom)