以下のPluginタブを開く
で、依存性を確認したいバンドル上で右クリックして、"Open Dependencies"をクリックすると
下図みたいな感じで、依存関係がわかる。
ちなみに、上のタブの端っこに
こんなアイコンがあるが、これで依存性の向きを指定できる。
CentOS: 6.3
JIRA: 5.1.8
MySQLでUserを追加するために、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
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がちゃんと動きません。
public class SpringInit implements ServiceLifeCycle {
[ 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)
spring.schemas
spring.handlers
#さっきのSpringInitの中の実装でも見にいってるし。
java.lang.ClassNotFoundException: org.apache.axis2.extensions.spring.receivers.SpringServletContextObjectSupplier