Учебник Apache TUSCANY SCA содержит неработающую ссылку

Я пытаюсь изучить архитектуру сервисных компонентов (SCA), поэтому я начал с учебника Apache Tuscany по этой ссылке: http://tuscany.apache.org/getting-started-with-tuscany.html

В начале этого руководства автор предоставляет ссылку на последний дистрибутив выпуска и просит загрузить библиотеки Тосканы по этой ссылке. Вот ссылка, которую он предоставил: http://cwiki.apache.org/TUSCANY/sca-java-releases.html

Всякий раз, когда я открываю эту ссылку, страница говорит: The requested URL /TUSCANY/sca-java-releases.html was not found on this server.

Итак, я попытался решить эту проблему, выполнив поиск в google для apache-tuscany-sca-1.3.2. Хотя я нашел только библиотеки для apache-tuscany-sca-1.6.2. Я загрузил их по этой ссылке: http://tuscany.apache.org/sca-java-1x-releases.html, и я последовал этому руководству.

Однако библиотека apache-tuscany-sca-1.6.2, похоже, отсутствует. В первой части урока, который говорит создать интерфейс каталога,

package services;

    import org.osoa.sca.annotations.Remotable;

    @Remotable
    public interface Catalog {
        Item[] get();
    }

Здесь я получаю сообщение об ошибке в этой строке import org.osoa.sca.annotations.Remotable;, Эта библиотека не существует с библиотекой TUSCANY, которую я скачал.

Я попытался решить проблему с помощью поиска файла JAR, который содержит org.osoa.sca.annotations.Remotable, Я нашел один и добавил его в библиотеку. Я делал подобные вещи снова и снова, чтобы получить недостающие файлы jar, и добавил их в библиотеку Тосканы. Однако, когда я запускаю программу, я получаю ошибки. Эти ошибки направляют меня к файлам jar, которые я добавил в библиотеку Тосканы. Вот ошибки:

Starting ...
يول 12, 2013 7:08:54 م org.apache.tuscany.sca.node.impl.NodeImpl <init>
INFO: Creating node: store.composite
يول 12, 2013 7:08:55 م org.apache.tuscany.sca.node.impl.NodeImpl configureNode
INFO: Loading contribution: file:/C:/Users/student/workspace/store/bin/
Exception in thread "main" org.osoa.sca.ServiceRuntimeException: java.lang.NullPointerException
    at org.apache.tuscany.sca.node.impl.NodeImpl.<init>(NodeImpl.java:204)
    at org.apache.tuscany.sca.node.impl.NodeFactoryImpl.createSCANodeFromClassLoader(NodeFactoryImpl.java:37)
    at org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.init(DefaultSCADomain.java:178)
    at org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.<init>(DefaultSCADomain.java:100)
    at org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance(SCADomain.java:182)
    at org.apache.tuscany.sca.host.embedded.SCADomain.newInstance(SCADomain.java:63)
    at launch.Launch.main(Launch.java:8)
Caused by: java.lang.NullPointerException
    at org.apache.tuscany.sca.databinding.DefaultDataBindingExtensionPoint.addDataBinding(DefaultDataBindingExtensionPoint.java:85)
    at org.apache.tuscany.sca.databinding.DefaultDataBindingExtensionPoint.loadDataBindings(DefaultDataBindingExtensionPoint.java:122)
    at org.apache.tuscany.sca.databinding.DefaultDataBindingExtensionPoint.introspectType(DefaultDataBindingExtensionPoint.java:196)
    at org.apache.tuscany.sca.core.databinding.processor.DataBindingJavaInterfaceProcessor.processInterface(DataBindingJavaInterfaceProcessor.java:128)
    at org.apache.tuscany.sca.core.databinding.processor.DataBindingJavaInterfaceProcessor.visitInterface(DataBindingJavaInterfaceProcessor.java:55)
    at org.apache.tuscany.sca.interfacedef.java.impl.JavaInterfaceIntrospectorImpl.introspectInterface(JavaInterfaceIntrospectorImpl.java:123)
    at org.apache.tuscany.sca.interfacedef.java.impl.JavaInterfaceFactoryImpl.createJavaInterface(JavaInterfaceFactoryImpl.java:58)
    at org.apache.tuscany.sca.implementation.java.introspect.impl.ServiceProcessor.createService(ServiceProcessor.java:175)
    at org.apache.tuscany.sca.implementation.java.introspect.impl.ServiceProcessor.visitClass(ServiceProcessor.java:75)
    at org.apache.tuscany.sca.implementation.java.impl.JavaClassIntrospectorImpl.introspectClass(JavaClassIntrospectorImpl.java:72)
    at org.apache.tuscany.sca.implementation.java.impl.JavaImplementationFactoryImpl.createJavaImplementation(JavaImplementationFactoryImpl.java:55)
    at org.apache.tuscany.sca.implementation.java.xml.JavaImplementationProcessor.resolve(JavaImplementationProcessor.java:228)
    at org.apache.tuscany.sca.implementation.java.xml.JavaImplementationProcessor.resolve(JavaImplementationProcessor.java:74)
    at org.apache.tuscany.sca.contribution.processor.DefaultStAXArtifactProcessorExtensionPoint$LazyStAXArtifactProcessor.resolve(DefaultStAXArtifactProcessorExtensionPoint.java:388)
    at org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactProcessor.resolve(ExtensibleStAXArtifactProcessor.java:183)
    at org.apache.tuscany.sca.assembly.xml.BaseAssemblyProcessor.resolveImplementation(BaseAssemblyProcessor.java:340)
    at org.apache.tuscany.sca.assembly.xml.CompositeProcessor.resolve(CompositeProcessor.java:1028)
    at org.apache.tuscany.sca.assembly.xml.CompositeProcessor.resolve(CompositeProcessor.java:90)
    at org.apache.tuscany.sca.contribution.processor.DefaultStAXArtifactProcessorExtensionPoint$LazyStAXArtifactProcessor.resolve(DefaultStAXArtifactProcessorExtensionPoint.java:388)
    at org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactProcessor.resolve(ExtensibleStAXArtifactProcessor.java:183)
    at org.apache.tuscany.sca.assembly.xml.CompositeDocumentProcessor.resolve(CompositeDocumentProcessor.java:231)
    at org.apache.tuscany.sca.assembly.xml.CompositeDocumentProcessor.resolve(CompositeDocumentProcessor.java:59)
    at org.apache.tuscany.sca.contribution.processor.ExtensibleURLArtifactProcessor.resolve(ExtensibleURLArtifactProcessor.java:106)
    at org.apache.tuscany.sca.contribution.service.impl.ContributionServiceImpl.processResolvePhase(ContributionServiceImpl.java:625)
    at org.apache.tuscany.sca.contribution.service.impl.ContributionServiceImpl.addContribution(ContributionServiceImpl.java:430)
    at org.apache.tuscany.sca.contribution.service.impl.ContributionServiceImpl.contribute(ContributionServiceImpl.java:198)
    at org.apache.tuscany.sca.node.impl.NodeImpl.configureNode(NodeImpl.java:524)
    at org.apache.tuscany.sca.node.impl.NodeImpl.<init>(NodeImpl.java:200)
    ... 6 more

Кажется, мне не следует добавлять недостающие библиотеки одну за другой. Поэтому мне нужна помощь в поиске нужной коллекции библиотеки TUSCANY, которая будет работать с этим руководством. Спасибо.

1 ответ

Я решил проблему. В той части, где они говорят:

"Since some of you maybe interested in debugging also the Tuscany runtime code we will attachthe Tuscany source to the Tuscany runtime jar in the following step. In the User Libraies dialog scroll down until you see the Tuscany runtime jar and select its Source attachment." 

Я считаю, что я не получил этот шаг и удалил один из файлов JAR вместо добавления.

apache-tuscany-sca-1.6.2 хорошо работает с этим руководством. Нет проблем.

Другие вопросы по тегам