gpt4 book ai didi

java - Tapestry +JDO+GAE

转载 作者:行者123 更新时间:2023-12-01 15:30:00 24 4
gpt4 key购买 nike

我尝试在 GAE 上运行 Tapestry。一段时间后,我能够解决最后一个错误,至少显示一个简单的页面。但是,说实话,某种数据存储会很好。我尝试使用tapestry-jdo,但有我的问题:我无法使用JDO的任何部分,而且我已经尝试了好几天了。

我将发布我的 pom.xml,它是我工作过的。我尝试了很多版本号组合,但大多数测试 JDO 的操作链接失败,因为找不到 org.datanucleus.store.appengine.jdo.DatastoreJDOPersistenceManagerFactory。 其余时间,我从 Tapestry 中得到了一个未捕获的异常,这是由另一个缺失的 JDO 类引起的,但这一次不是在构建 JDOEntityManagerSource 时,而是在更深的地方。

我没学过编程,都是自学的,所以我的maven知识有限。此 pom.xml 可能包含 Needles 条目。

如果我用maven构建它,我得到无法将元数据asm:asm/maven-metadata.xml从/到local.repository(文件:../../local.repository/trunk)传输:在某些情况下,没有连接器可用于访问存储库 local.repository

<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>Example</artifactId>
<version>0.1</version>
<packaging>war</packaging>
<name>Example</name>
<dependencies>
<dependency>
<groupId>org.apache.tapestry</groupId>
<artifactId>tapestry-core</artifactId>
<version>${tapestry-release-version}</version>
</dependency>


<dependency>
<groupId>com.google.appengine</groupId>
<artifactId>appengine-api-labs</artifactId>
<version>${gae.version}</version>
</dependency>

<dependency>
<groupId>com.google.appengine</groupId>
<artifactId>appengine-api-1.0-sdk</artifactId>
<version>${gae.version}</version>
</dependency>

<dependency>
<groupId>com.google.appengine</groupId>
<artifactId>appengine-java-sdk</artifactId>
<version>${gae.version}</version>
<type>pom</type>
</dependency>

<dependency>
<groupId>javax.jdo</groupId>
<artifactId>jdo2-api</artifactId>
<version>2.3-eb</version>
</dependency>

<dependency>
<groupId>com.google.appengine.orm</groupId>
<artifactId>datanucleus-appengine</artifactId>
<version>2.0.0-RC3</version>
</dependency>


<dependency>
<groupId>org.datanucleus</groupId>
<artifactId>datanucleus-rdbms</artifactId>
<version>${datanucleus.version}</version>
</dependency>

<dependency>
<groupId>org.datanucleus</groupId>
<artifactId>datanucleus-core</artifactId>
<version>${datanucleus.version}</version>
</dependency>
<dependency>
<groupId>org.tynamo</groupId>
<artifactId>tapestry-jdo</artifactId>
<version>0.0.1</version>
</dependency>

<!-- Provided by the servlet container, but sometimes referenced in the application code. -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>

</dependencies>
<build>
<finalName>Example</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<optimize>true</optimize>
</configuration>
</plugin>
<plugin>
<groupId>net.kindleit</groupId>
<artifactId>maven-gae-plugin</artifactId>
<version>0.6.0</version>
<configuration>
<serverId>appengine.google.com</serverId>
</configuration>
</plugin>

<!--
This plug-in "enhances" your domain model objects (i.e.
makes them persistent for datanucleus)
-->
<plugin>
<groupId>org.datanucleus</groupId>
<artifactId>maven-datanucleus-plugin</artifactId>
<version>1.1.4</version>

<configuration>
<mappingIncludes>**/entities/*.class</mappingIncludes><!--*/ just to stop formatig the rest of the code as comment-->
<verbose>true</verbose>
<enhancerName>ASM</enhancerName>
<api>JDO</api>

</configuration>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>enhance</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.datanucleus</groupId>
<artifactId>datanucleus-core</artifactId>
<version>${datanucleus.version}</version>
<exclusions>
<exclusion>
<groupId>javax.transaction</groupId>
<artifactId>transaction-api</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.datanucleus</groupId>
<artifactId>datanucleus-rdbms</artifactId>
<version>${datanucleus.version}</version>
</dependency>
<dependency>
<groupId>org.datanucleus</groupId>
<artifactId>datanucleus-enhancer</artifactId>
<version>1.1.4</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>


<repositories>
<repository>
<id>tapestry-snapshots</id>
<url>http://repository.apache.org/snapshots/</url>
</repository>

<repository>
<id>codehaus.snapshots</id>
<url>http://snapshots.repository.codehaus.org</url>
</repository>

<repository>
<id>maven-gae-plugin-repo</id>
<name>Maven Google App Engine Repository</name>
<url>http://maven-gae-plugin.googlecode.com/svn/repository/</url>
</repository>

<repository>
<id>data-nucleus</id>
<url>http://www.datanucleus.org/downloads/maven2/</url>
</repository>
</repositories>

<pluginRepositories>
<pluginRepository>
<id>tapestry-snapshots</id>
<url>http://repository.apache.org/snapshots/</url>
</pluginRepository>
<pluginRepository>
<id>maven-gae-plugin-repo</id>
<name>maven-gae-plugin repository</name>
<url>http://maven-gae-plugin.googlecode.com/svn/repository</url>
</pluginRepository>

</pluginRepositories>

<properties>
<tapestry-release-version>5.3.2</tapestry-release-version>
<gae.version>1.6.3</gae.version>
<datanucleus.version>1.1.5</datanucleus.version>
</properties>
</project>

最佳答案

datanucleus-appengine 插件 v2 应该与 DataNucleus jar v3.0.* 和 javax.jdo jdo-api v3.0.1 一起使用...根据 GAE 的文档, http://code.google.com/p/datanucleus-appengine/wiki/UpgradingToVersionTwo

关于java - Tapestry +JDO+GAE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9650968/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com