`
86asm
  • 浏览: 203719 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

2010小问题解决汇总跟贴

阅读更多

      关于如何建立compass索引为项目的相对路径问题,最初是在本地测试,可以随意建立索引位置, 但是如果借用虚拟主机来发布项目,则不行,原因是虚拟主机并不能给我们随意访问磁盘的权限。本次项目是在spring中整合compass,最初的本地测试:compass在spring的配置内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:context="http://www.springframework.org/schema/context"
	xmlns:tx="http://www.springframework.org/schema/tx"
	xsi:schemaLocation="http://www.springframework.org/schema/beans 
	http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
    http://www.springframework.org/schema/context    
    http://www.springframework.org/schema/context/spring-context-2.5.xsd
    http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
    ">
	<context:component-scan base-package="com.asm" />
	<bean id="localEMF"
		class="org.springframework.orm.jpa.LocalEntityManagerFactoryBean">
		<property name="persistenceUnitName" value="jpaDemo" />
	</bean>
	<bean id="txManager"
		class="org.springframework.orm.jpa.JpaTransactionManager">
		<property name="entityManagerFactory" ref="localEMF" />
	</bean>
	<tx:annotation-driven transaction-manager="txManager" />

	<!-- compass扫描相关的配置 start -->
	<bean id="compass" class="org.compass.spring.LocalCompassBean">
		<!-- 指定映射类方式 -->
		<property name="classMappings">
			<list>
				<value>com.asm.product.entity.Axx</value>
				<value>com.asm.product.entity.Bxx</value>				
			</list>
		</property>
		

		<property name="compassSettings">
			<props>
				<!-- 索引存放位置 -->
				<prop key="compass.engine.connection">
					file://e:/indexStore
				</prop>
				<prop
					key="compass.engine.highlighter.default.formatter.simple.pre"><![CDATA[<font color='red'>]]></prop>
				<prop
					key="compass.engine.highlighter.default.formatter.simple.post"><![CDATA[</font>]]></prop>
				<prop key="compass.transaction.factory">
					org.compass.spring.transaction.SpringSyncTransactionFactory
				</prop>
			</props>
		</property>
		<property name="transactionManager" ref="txManager" />
	</bean>
	<!-- CompassGps为CompassGpsDevice提供Compass对象,他们一起为程序提供索引的实时更新 -->
	<bean id="compassGps" class="org.compass.gps.impl.SingleCompassGps"
		init-method="start" destroy-method="stop">
		<property name="compass" ref="compass" />
		<property name="gpsDevices">
			<list>
				<bean
					class="org.compass.spring.device.SpringSyncTransactionGpsDeviceWrapper">
					<property name="gpsDevice">
						<!-- 为gpsDevice属性注入针对JPA的GPS驱动 -->
						<bean
							class="org.compass.gps.device.jpa.JpaGpsDevice">
							<property name="name" value="jpaDevice" />
							<property name="entityManagerFactory"
								ref="localEMF" />
							<property
								name="injectEntityLifecycleListener" value="true" />
						</bean>
					</property>
				</bean>
			</list>
		</property>
	</bean>

	<!-- compass扫描相关的配置 end -->

</beans>

 这样配置后,在本地索引肯定没问题,但是我们无论如何修改

<prop key="compass.engine.connection">
					file://e:/indexStore
</prop>

这段配置,它生成的索引路径总会是依赖于它的一个绝对路径,并不会依赖于当前项目中生成一个相对路径的索引,由于本身对compass认识并不深刻,加之并没有时间认真去看它的一些源码,这里只简要地就说下关于索引建立时compass的处理方式:如果你指定了connection配置来建立索引位置,它就会根据它的值来作为相对路径来生成索引的绝对路径。即只需在项目中为如果你配置了org.compass.spring.LocalCompassBean  bean对象增加如下配置:

	<!-- 索引存放位置 -->		
      	<property name="connection">
            <value>/indexStore</value>
        </property>

    这样建立的索引位置就是一个相对路径。至此问题解决。

 但是这样配置后,也引发了项目中的一个小问题,在项目中用到了ajax异步交互,而ajax后台处理程序是servlet,最开始是直接写了一个工具类LogicBeanUtil来得到要用得业务层bean,但是继续使用它来处理,又存在初始化spring容器错误,由于spring容器中配置的connection[compass索引]依赖于整个web容器,而最初我涉及的logicBeanUtil是脱离了web容器,所以这样做并不能得到业务层bean对象,其实在servlet中可以有一很方便的方式注入业务层对象,代码如下:

WebApplicationContext ctx = WebApplicationContextUtils
				.getWebApplicationContext(getServletContext());
UserService userService = (UserService) ctx.getBean("userServiceBean");

 至此问题得已解决。

 

分享到:
评论
1 楼 86asm 2010-04-27  
jdk1.5 @Override 注解如果用于覆盖实现接口的方法之上,将会报错,因为在jdk1.5中此注解只能用于重写父类方法之上,JDK1.6对此作了改进

相关推荐

    枫叶网吧留言簿asp版v2010

    献出本网吧使用了5年的网吧留言本,此留言程序本网吧从2005-12-13 开始用到现在,使用至今留言总数达1000多条.为庆祝留言满1000条,今晚...安装过程中遇到问题可跟贴,本人随时在线回复! 使用说明:管理账号 admin 密码

    枫叶网吧留言簿 v2010.rar

    安装过程中遇到问题可跟贴,本人随时在线回复! 使用说明:管理账号 admin 密码 admin 点界面上管理后台登陆后,在信息设置里可进行密码修改,注:用户名不能修改.留言簿题目名字在book/UU/config.asp修改,用记事本...

    gc-powerstation.rar

    2、软件为英文,都是很简单的英文,很容易上手,如果大家在使用中有什么问题请跟贴询问,我会第一时间解答,如果有可能的话,后期我会陆续出相关教程。 3、一般用于SMT、PCB厂家、PCB设计等场合,比CAM350好用多...

    jsp小型论坛系统(B/S)

    前台:相关内容的跟贴、更贴、回帖、发新帖等B.后台:主要个人主页相关模块的增,删,查,改,图片上传 C .实现功能: 1.公共聊天,2.资料管理,3.论坛,4.新闻中心,5.网站链接,6.帮助,7.站内资源搜索,8.个人博客,9....

    广告公司管理系统

    距离上次发这个有段时间了,这段时间我自己也一直在用和改进,但肯定还有些问题。如果使得过程中遇到问题可以跟贴或私信我,现在很少时间上来,可能一时半会回复不了,见谅。 在确认使用这个之前,我要声明一下 本...

    电商解决售后问题标准话术-2页.doc

    1. **灵活处理尺寸问题**:针对尺码不合适的问题,客服应该提供解决方案,比如建议顾客使用半码垫或后跟贴,并在不影响二次销售的情况下提供换货服务。 2. **理解顾客需求**:当顾客对商品外观或款式不满意时,客服...

    网络风采MSSQL0.0.3+风格美化+部分插件 动网7sql修正版

    有什么错误请跟贴报告,有什么好的建议请跟贴报告! 银行错误已经修正 关于和阳光短信重叠问题,请关闭阳光短信首页顶部广告即可. 其它错误报告的错误我没有发现,有待验证. 如有错误继续回复我. 在发布...

    诚信论坛(bbs)源码

    通过论坛系统,用户可以发表自己的言论(主题贴),其他的用户可以对主题贴进行评论(跟贴)或发表更多的言论(主题贴)。 1. 功能划分 (1)用户功能 用户注册:用户可以注册为该系统成员(需超级管理员审批后方可...

    龙网天涯推广小助手 v16.3.zip

    龙网天涯推广小助手是一款天涯论坛推广软件,龙网天涯推广小助手支持天涯论坛论坛发贴,论坛跟贴,论坛顶贴,发站内信,发天涯问答等功能,可以选择过虑已发送数据。 龙网天涯推广小助手功能: 1.支持批量导入帐号...

    Ajax+Asp源代码]读取数据库内容的表格(没有用框架)第1/2页

    目前还有一个小问题,如果有朋友有兴趣帮我解决一下在下不胜感激 你翻到最后一页的时候如果只有一行会出现空白和undefined.这个问题我试了很多方法一直没有很妥当的解决. 注:下面一些地方出现笑脸表情的是 大写的d ...

    幼儿园教案2021-幼儿园小班健康活动:自己穿袜子.doc

    5. 学习穿袜:演示正确的穿袜步骤,如袜跟朝下、袜口套脚踝、袜头包脚趾、袜跟贴脚后跟,然后轻轻拉起。幼儿模仿练习,教师进行个别指导。 6. 结束语:强调保持个人卫生的重要性,如每天洗脚换袜,培养幼儿自己穿...

    一个java正则表达式工具类.txt

    一个java正规表达式工具类 关键字: 一个java正规表达式工具类 猛然想起两年写了一个java的正规表达式的java工具类,分享一下,有...在这是junit测试单元类我就不提交了,在main()方法中有几个小测试,有兴趣自己玩吧.

    Oracle数据库的设计方案研.pptx

    1. 需求分析:在这个阶段,我们需要深入了解客户业务和数据处理的需求,以便确定数据库需要解决的问题和任务。 2. 概要设计:这个阶段主要工作是绘制数据库的E-R(实体-关系)模型图,用以确认需求信息的正确性和...

    Oracle关系数据库.pptx

    首先,设计数据库的初衷在于解决复杂数据管理问题。当数据量大且关系复杂时,良好的设计可以节省存储空间,保证数据完整性,便于系统开发。反之,设计不当会导致数据冗余、空间浪费,甚至出现数据更新和插入的异常。...

    蓝牙调试助手

    最近一直在搞Android上的蓝牙应用,每次在PC上调试蓝牙设备中的数据还可以,但是在Android手机上就非常不方便,所以自己写了个简单的Android蓝牙调试助手,希望各位下载使用,如有问题和Bug跟贴。

    bblean修改版1.16

    当然,由于本人水平有限,在汉化过程中难免会有遗漏或出错的现象,如果你发现了,请到论坛上跟贴告知,我会尝试修改,并在以后的版本中更正,谢谢!!! 部分菜单选项的作用尚未了解,因此就保留原英文或按照单词...

    Exelock2.11文件加密器 (程序及源代码)

    还没有来得及准备文档,先放上来让大家有点新东西下载,这个程序是我早期的作品,不过本来代码一直没有公开,因为一旦公开,加密就没有意义了,不过因为网站改版这么久,觉得很对不起大家,就把这个还...有问题跟贴。

    面试王系列2(笔试)

    在IT行业的面试中,尤其是针对软件开发人员,面试官通常会考察候选人的技术实力和问题解决能力。本压缩包文件“面试王系列2(笔试)”包含了一些关键领域的知识,包括C语言、Java以及C++的基础和进阶题目,旨在帮助...

    2010.8信息技术教师业务考试2.0答案版.docx,这是一份不错的文件

    这可以通过使用“格式”菜单中的“更改大小写”命令来实现,这是一种常见的文本格式化技巧。 ### 9. Excel 的数据处理 第九个例子涉及Excel的数据处理功能。排序、汇总、筛选等操作通常位于“数据”菜单下。这些...

Global site tag (gtag.js) - Google Analytics