Java心路

Java、Eclipse、Ajax......一个都不能少

 

2011年9月21日

tlisten冲突导致tmboot无法启动的解决方案

当Tuxedo的MP环境下tmbooty时一台机器提示:

exec BBL -A :
        on SITE2 -> CMDTUX_CAT:814: ERROR: Cannot propagate TUXCONFIG file

tmboot: WARN: No BBL available on site SITE2.
        Will not attempt to boot server processes on that site.


ULOG中记录:

CMDTUX_CAT:1578: ERROR: Could not contact NLS on SITE2
132119.site1!tmboot.3098.1077068416.-2: CMDTUX_CAT:1576: ERROR: No NLS available for remote machine SITE2


有可能是tlisten端口冲突,需要登录到出错机器上ps -ef | grep tlisten查看当前tlisten的ip和port,是否与ubb中的一致,若不一致,则需要kill该进程或者清理ipc,否则需要登录到持有该进程的用户下kill操作。清理该进程后可能需要到$TUXDIR/bin下执行tlisten ip:port将该进程执行起来。

posted @ 2011-09-21 17:17 bisal 阅读(745) | 评论 (0)编辑 收藏

2011年9月15日

win7下myeclipse/eclipse使用subclipse进行checkout时自动关闭问题

现象:WIN7 32bit,myeclipse/eclipse用subclipse插件,输入url进行checkout操作时,窗口自动关闭,从日志中看:

#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x3623804c, pid=1256, tid=8876
#
# Java VM: Java HotSpot(TM) Client VM (1.5.0_11-b03 mixed mode)
# Problematic frame:
# C [libapr-1.dll+0x804c]
#

--------------- T H R E A D ---------------

Current thread (0x34b66580): JavaThread "ModalContext" [_thread_in_native, id=8876]

siginfo: ExceptionCode=0xc0000005, reading address 0x00000000

Registers:
EAX=0x36f3bb70, EBX=0x00000000, ECX=0x00000000, EDX=0x00000000
ESP=0x36228c74, EBP=0x36228c80, ESI=0x338ff0e8, EDI=0x00000000
EIP=0x3623804c, EFLAGS=0x00010246

Top of Stack: (sp=0x36228c74)
0x36228c74: 00000000 338ff0e8 36f3bb70 3622acac
0x36228c84: 361d1f32 3622aca8 36f3bb70 00000000
0x36228c94: 00000000 00000000 338ff0e8 36f3bb70
0x36228ca4: 00000000 36f3bb70 00000000 36f3bb70
0x36228cb4: 36f3bc10 6eec84f1 36f3bb70 00000010
0x36228cc4: 6ee40000 6eec11f2 36f3bb70 36f3bc10
0x36228cd4: 6eec1210 6eec8610 36f3bb70 36f3bbc0
0x36228ce4: 36f3bb70 36f3bb70 00000000 003a0043

Instructions: (pc=0x3623804c)
0x3623803c: 89 55 10 53 8b 5d 14 56 57 85 db 75 03 8b 58 18
0x3623804c: 8b 03 bf 01 00 00 00 3b c7 0f 82 1a 01 00 00 8b


Stack: [0x361f0000,0x36230000), sp=0x36228c74, free space=227k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [libapr-1.dll+0x804c]
C [libapriconv-1.dll+0x1f32]
C [libapriconv-1.dll+0x1da4]
C [_tbl_simple.so+0x123b]
C [_tbl_simple.so+0x11c4]

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j org.tigris.subversion.javahl.SVNClient.info2(Ljava/lang/String;Lorg/tigris/subversion/javahl/Revision;Lorg/tigris/subversion/javahl/Revision;Z)[Lorg/tigris/subversion/javahl/Info2;+0
j org.tigris.subversion.svnclientadapter.javahl.AbstractJhlClientAdapter.getInfo(Lorg/tigris/subversion/svnclientadapter/SVNUrl;Lorg/tigris/subversion/svnclientadapter/SVNRevision;Lorg/tigris/subversion/svnclientadapter/SVNRevision;)Lorg/tigris/subversion/svnclientadapter/ISVNInfo;+55
j org.tigris.subversion.svnclientadapter.AbstractClientAdapter.getInfo(Lorg/tigris/subversion/svnclientadapter/SVNUrl;)Lorg/tigris/subversion/svnclientadapter/ISVNInfo;+8
j org.tigris.subversion.subclipse.core.repo.SVNRepositoryLocation.validateConnection(Lorg/eclipse/core/runtime/IProgressMonitor;)V+10
j org.tigris.subversion.subclipse.ui.wizards.NewLocationWizard$1.run(Lorg/eclipse/core/runtime/IProgressMonitor;)V+7
j org.eclipse.jface.operation.ModalContext$ModalContextThread.run()V+15
v ~StubRoutines::call_stub

--------------- P R O C E S S ---------------

Java Threads: ( => current thread )
=>0x34b66580 JavaThread "ModalContext" [_thread_in_native, id=8876]
0x34b66eb0 JavaThread "MyEclipse Thread" [_thread_blocked, id=11180]
0x34b67038 JavaThread "Device List Monitor" daemon [_thread_in_native, id=11028]
0x34b66ba0 JavaThread "Cleanup" daemon [_thread_in_native, id=9740]
0x34b663f8 JavaThread "Worker-2" [_thread_blocked, id=8772]
0x34c62038 JavaThread "Monitor" daemon [_thread_in_native, id=11660]
0x349ce678 JavaThread "org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon [_thread_blocked, id=7664]
0x348fe8e0 JavaThread "Java indexing" daemon [_thread_blocked, id=4916]
0x33ee2710 JavaThread "Worker-0" [_thread_blocked, id=3028]
0x33d05070 JavaThread "Start Level Event Dispatcher" daemon [_thread_blocked, id=11564]
0x33d04cc0 JavaThread "Framework Event Dispatcher" daemon [_thread_blocked, id=2168]
0x33d598e8 JavaThread "State Data Manager" daemon [_thread_blocked, id=4476]
0x012dfd80 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=10552]
0x012df7f0 JavaThread "CompilerThread0" daemon [_thread_blocked, id=4468]
0x012deb88 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=5136]
0x012bc0c8 JavaThread "Finalizer" daemon [_thread_blocked, id=11928]
0x012bb450 JavaThread "Reference Handler" daemon [_thread_blocked, id=1272]
0x005da8c8 JavaThread "main" [_thread_in_native, id=7440]

Other Threads:
0x012b7450 VMThread [id=6572]
0x005debb8 WatcherThread [id=6788]

VM state:not at safepoint (normal execution)

VM Mutex/Monitor currently owned by a thread: None

Heap
def new generation total 9152K, used 3910K [0x035b0000, 0x03f90000, 0x05d10000)
eden space 8192K, 36% used [0x035b0000, 0x03891aa0, 0x03db0000)
from space 960K, 99% used [0x03ea0000, 0x03f8fff8, 0x03f90000)
to space 960K, 0% used [0x03db0000, 0x03db0000, 0x03ea0000)
tenured generation total 121024K, used 65097K [0x05d10000, 0x0d340000, 0x235b0000)
the space 121024K, 53% used [0x05d10000, 0x09ca26c8, 0x09ca2800, 0x0d340000)
compacting perm gen total 131072K, used 56037K [0x235b0000, 0x2b5b0000, 0x335b0000)
the space 131072K, 42% used [0x235b0000, 0x26c694b8, 0x26c69600, 0x2b5b0000)
No shared spaces configured.

Dynamic libraries:
0x00400000 - 0x0040d000 D:\MyEclipse\jre\bin\javaw.exe
0x77420000 - 0x7755d000 C:\Windows\SYSTEM32\ntdll.dll
0x75920000 - 0x759f4000 C:\Windows\system32\kernel32.dll
0x755f0000 - 0x7563a000 C:\Windows\system32\KERNELBASE.dll
0x762a0000 - 0x76340000 C:\Windows\system32\ADVAPI32.dll
0x75870000 - 0x7591c000 C:\Windows\system32\msvcrt.dll
0x77590000 - 0x775a9000 C:\Windows\SYSTEM32\sechost.dll
0x75c80000 - 0x75d21000 C:\Windows\system32\RPCRT4.dll
0x77150000 - 0x77219000 C:\Windows\system32\USER32.dll
0x763c0000 - 0x7640e000 C:\Windows\system32\GDI32.dll
0x77570000 - 0x7757a000 C:\Windows\system32\LPK.dll
0x77220000 - 0x772bd000 C:\Windows\system32\USP10.dll
0x75a00000 - 0x75a1f000 C:\Windows\system32\IMM32.DLL
0x75bb0000 - 0x75c7c000 C:\Windows\system32\MSCTF.dll
0x6d640000 - 0x6d7dd000 D:\MyEclipse\jre\bin\client\jvm.dll
0x73c10000 - 0x73c42000 C:\Windows\system32\WINMM.dll
0x75470000 - 0x754bb000 C:\Windows\system32\apphelp.dll
0x6d290000 - 0x6d298000 D:\MyEclipse\jre\bin\hpi.dll
0x77560000 - 0x77565000 C:\Windows\system32\PSAPI.DLL
0x6d610000 - 0x6d61c000 D:\MyEclipse\jre\bin\verify.dll
0x6d310000 - 0x6d32d000 D:\MyEclipse\jre\bin\java.dll
0x6d630000 - 0x6d63f000 D:\MyEclipse\jre\bin\zip.dll
0x72000000 - 0x72012000 D:\MyEclipse\eclipse\plugins\org.eclipse.equinox.launcher.win32.win32.x86_1.0.1.R33x_v20070828\eclipse_1020.dll
0x72d30000 - 0x72db4000 C:\Windows\WinSxS\x86_microsoft.windows.common-controls_6595b64144ccf1df_5.82.7600.16661_none_ebfb56996c72aefc\COMCTL32.dll
0x74a70000 - 0x74a79000 C:\Windows\system32\VERSION.dll
0x74450000 - 0x74490000 C:\Windows\system32\uxtheme.dll
0x33ff0000 - 0x3404e000 C:\Program Files\360\360Safe\safemon\safemon.dll
0x76410000 - 0x77059000 C:\Windows\system32\SHELL32.dll
0x76070000 - 0x760c7000 C:\Windows\system32\SHLWAPI.dll
0x772c0000 - 0x7741c000 C:\Windows\system32\ole32.dll
0x77060000 - 0x770ef000 C:\Windows\system32\OLEAUT32.dll
0x62800000 - 0x62866000 C:\Windows\system32\MSVCP60.dll
0x75e30000 - 0x75e65000 C:\Windows\system32\WS2_32.dll
0x77580000 - 0x77586000 C:\Windows\system32\NSI.dll
0x745d0000 - 0x7476e000 C:\Windows\WinSxS\x86_microsoft.windows.common-controls_6595b64144ccf1df_6.0.7600.16661_none_420fe3fa2b8113bd\Comctl32.dll
0x754c0000 - 0x754cc000 C:\Windows\system32\CRYPTBASE.dll
0x775c0000 - 0x77643000 C:\Windows\system32\CLBCatQ.DLL
0x6d4d0000 - 0x6d4e3000 D:\MyEclipse\jre\bin\net.dll
0x74fb0000 - 0x74fec000 C:\Windows\system32\mswsock.dll
0x74fa0000 - 0x74fa6000 C:\Windows\System32\wship6.dll
0x6d4f0000 - 0x6d4f9000 D:\MyEclipse\jre\bin\nio.dll
0x343c0000 - 0x3440f000 D:\MyEclipse\eclipse\configuration\org.eclipse.osgi\bundles\505\1\.cp\swt-win32-3346.dll
0x76340000 - 0x763bb000 C:\Windows\system32\comdlg32.dll
0x75d30000 - 0x75e25000 C:\Windows\system32\WININET.dll
0x75a20000 - 0x75b56000 C:\Windows\system32\urlmon.dll
0x75660000 - 0x7577c000 C:\Windows\system32\CRYPT32.dll
0x755e0000 - 0x755ec000 C:\Windows\system32\MSASN1.dll
0x75e70000 - 0x7606a000 C:\Windows\system32\iertutil.dll
0x74120000 - 0x74133000 C:\Windows\system32\dwmapi.dll
0x34440000 - 0x34448000 D:\MyEclipse\eclipse\configuration\org.eclipse.osgi\bundles\435\1\.cp\os\win32\x86\localfile_1_0_0.dll
0x73ad0000 - 0x73b0c000 C:\Windows\system32\oleacc.dll
0x35ae0000 - 0x35af4000 D:\MyEclipse\eclipse\configuration\org.eclipse.osgi\bundles\505\1\.cp\swt-gdip-win32-3346.dll
0x742c0000 - 0x74450000 C:\Windows\WinSxS\x86_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7600.16385_none_72fc7cbf861225ca\gdiplus.dll
0x74ff0000 - 0x75006000 C:\Windows\system32\CRYPTSP.dll
0x74d70000 - 0x74dab000 C:\Windows\system32\rsaenh.dll
0x75560000 - 0x7556e000 C:\Windows\system32\RpcRtRemote.dll
0x674b0000 - 0x674de000 C:\Windows\system32\mlang.dll
0x74bd0000 - 0x74be7000 C:\Windows\system32\USERENV.dll
0x75570000 - 0x7557b000 C:\Windows\system32\profapi.dll
0x74b00000 - 0x74b05000 C:\Windows\System32\wshtcpip.dll
0x74e70000 - 0x74eb4000 C:\Windows\system32\DNSAPI.dll
0x711d0000 - 0x711f1000 C:\Program Files\Bonjour\mdnsNSP.dll
0x73a00000 - 0x73a1c000 C:\Windows\system32\Iphlpapi.DLL
0x739f0000 - 0x739f7000 C:\Windows\system32\WINNSI.DLL
0x70fa0000 - 0x70fa6000 C:\Windows\system32\rasadhlp.dll
0x73240000 - 0x73278000 C:\Windows\System32\fwpuclnt.dll
0x739e0000 - 0x739e5000 C:\Windows\system32\msimg32.dll
0x738d0000 - 0x738e0000 C:\Windows\system32\NLAapi.dll
0x6f780000 - 0x6f790000 C:\Windows\system32\napinsp.dll
0x6f740000 - 0x6f752000 C:\Windows\system32\pnrpnsp.dll
0x6f790000 - 0x6f79d000 C:\Windows\system32\wshbth.dll
0x6f770000 - 0x6f778000 C:\Windows\System32\winrnr.dll
0x6d4c0000 - 0x6d4c8000 D:\MyEclipse\jre\bin\management.dll
0x6eec0000 - 0x6eee1000 D:\MyEclipse\eclipse\configuration\org.eclipse.osgi\bundles\588\1\.cp\libapr.dll
0x6ee50000 - 0x6ee59000 D:\MyEclipse\eclipse\configuration\org.eclipse.osgi\bundles\588\1\.cp\libapriconv.dll
0x365a0000 - 0x366a8000 D:\MyEclipse\eclipse\configuration\org.eclipse.osgi\bundles\588\1\.cp\libeay32.dll
0x712b0000 - 0x712b7000 C:\Windows\system32\WSOCK32.dll
0x36710000 - 0x367d4000 D:\MyEclipse\eclipse\configuration\org.eclipse.osgi\bundles\588\1\.cp\libdb44.dll
0x364e0000 - 0x36511000 D:\MyEclipse\eclipse\configuration\org.eclipse.osgi\bundles\588\1\.cp\ssleay32.dll
0x6ee60000 - 0x6ee89000 D:\MyEclipse\eclipse\configuration\org.eclipse.osgi\bundles\588\1\.cp\libaprutil.dll
0x36520000 - 0x36532000 D:\MyEclipse\eclipse\configuration\org.eclipse.osgi\bundles\588\1\.cp\intl3_svn.dll
0x37890000 - 0x37999000 D:\MyEclipse\eclipse\configuration\org.eclipse.osgi\bundles\588\1\.cp\libsvnjavahl-1.dll
0x70920000 - 0x70925000 C:\Windows\system32\SHFOLDER.dll
0x6ee40000 - 0x6ee45000 C:\Program Files\Subversion\iconv\_tbl_simple.so
0x361d0000 - 0x361d9000 C:\Program Files\Subversion\bin\libapriconv-1.dll
0x36230000 - 0x36252000 C:\Program Files\Subversion\bin\libapr-1.dll

VM Arguments:
jvm_args: -Xms128m -Xmx512m -Duser.language=en -XX:PermSize=128M -XX:MaxPermSize=256M
java_command: D:\MyEclipse\eclipse\plugins\org.eclipse.equinox.launcher_1.0.1.R33x_v20070828.jar -os win32 -ws win32 -arch x86 -showsplash -launcher D:\MyEclipse\eclipse\eclipse.exe -name Eclipse --launcher.library D:\MyEclipse\eclipse\plugins\org.eclipse.equinox.launcher.win32.win32.x86_1.0.1.R33x_v20070828\eclipse_1020.dll -startup D:\MyEclipse\eclipse\plugins\org.eclipse.equinox.launcher_1.0.1.R33x_v20070828.jar -exitdata 2178_a4 -vm D:\MyEclipse\jre\bin\javaw.exe -vmargs -Xms128m -Xmx512m -Duser.language=en -XX:PermSize=128M -XX:MaxPermSize=256M -jar D:\MyEclipse\eclipse\plugins\org.eclipse.equinox.launcher_1.0.1.R33x_v20070828.jar
Launcher Type: SUN_STANDARD

Environment Variables:
JAVA_HOME=D:\JAVA\jdk1.6
CLASSPATH=.;D:\JAVA\jdk1.6\lib\tools.jar;D:\JAVA\jdk1.6\lib\dt.jar;C:\Program Files\Sun\JavaDB\lib\derbytools.jar;C:\Program Files\Sun\JavaDB\lib\derby.jar;C:\Program Files\Subversion\bin;D:\JAVA\jre1.6\lib\ext\QTJava.zip
PATH=C:\oracle10g\product\10.2.0\db_1\bin;C:\Oracle\Ora92\bin\bin;C:\Program Files\Oracle\jre\1.3.1\bin;C:\Program Files\Oracle\jre\1.1.8\bin;D:\JAVA\jdk1.6\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Intel\DMIX;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\Program Files\Hewlett-Packard\OpenView\service desk 4.5\client\bin;C:\Program Files\Sun\JavaDB\bin;C:\Program Files\Subversion\bin;C:\Program Files\QuickTime\QTSystem\;C:\Program Files\IDM Computer Solutions\UltraEdit\
USERNAME=Bill
OS=Windows_NT
PROCESSOR_IDENTIFIER=x86 Family 6 Model 37 Stepping 5, GenuineIntel



--------------- S Y S T E M ---------------

OS: Windows NT 6.1 Build 7600

CPU:total 4 (cores per cpu 8, threads per core 2) family 6 model 5 stepping 5, cmov, cx8, fxsr, mmx, sse, sse2, ht

Memory: 4k page, physical 2097151k(962372k free), swap 4194303k(2784484k free)

vm_info: Java HotSpot(TM) Client VM (1.5.0_11-b03) for windows-x86, built on Dec 15 2006 01:16:12 by "java_re" with MS VC++ 6.0

网上说是subversion有冲突,但我尝试xp版本没问题,估计可能是win7、eclipse、sublicpse和subversion之间可能有冲突,解决方法是:
将系统的环境变量 APR_ICONV_PATH改为APR_ICONV1_PATH

论坛里说:
Subclipse can crash on Windows if you have the environment variable
APR_ICONV_PATH set and it is pointing at a set of libraries that were
built against Apache 2.2. If that is the case, change the environment
variable name to APR_ICONV1_PATH and that will fix the problem. The
libraries from 2.2 will look for the variable with the "1" in it first
anyway. So this is a proper change to make.

If you want to be thorough, you could download the zip file for
Subversion 1.4.3, and point the APR_ICONV_PATH variable at the iconv
folder that came with it.

但这里的问题似乎与Apache2.2以及subversion无关,因为自己用的时subversion1.6,且win7和win xp之间不同,所以还是觉得是win7版本的问题。。。如果有哪位高人也曾遇到过或知道详解,还请告知,谢谢!

posted @ 2011-09-15 18:09 bisal 阅读(1081) | 评论 (0)编辑 收藏

2009年11月26日

向Oracle插入timestamp类型字段

如果是中文字符集:

[TEST@ora10gr1#2009-11-25/08:39:38]

SQL>create table t1(t timestamp);

Table created.

[TEST@ora10gr1#2009-11-25/08:39:56]

SQL>insert into t1 values(to_timestamp('21NOV09 10:04:12.032','DDMONYY HH24:MI:SS.FF'));

* ERROR at line 1: ORA-01843: not a valid month

应该指定用american字符集插入就对了:

[TEST@ora10gr1#2009-11-25/08:39:56]

SQL>insert into t1 values(to_timestamp('21NOV09 10:04:12.032','DDMONYY HH24:MI:SS.FF','nls_date_language=american'));

1 row created.

posted @ 2009-11-26 09:22 bisal 阅读(3286) | 评论 (0)编辑 收藏

2008年12月21日

Cloud Compute

       最近,Cloud Compute,也就是“云计算”备受关注,或者说是因为一些大厂商铺天盖地的宣传才导致自web2.0以来又一个互联网应用的new wave。。。

       首先,扫下盲,啥时云计算?云计算是一个虚拟化的计算机资源池,也是一种新的IT资源提供模式,可以简单地将他理解成一个数据中心,这个数据中心的计算机可以自动地管理和动态的分配、部署、配置、重新配置以及回收资源,也可以自动安装软件和应用。云计算的构成包括硬件、软件和服务。硬件主要是x86或Power的及其。软件包括管理计算机自动化的软件,以及被管理的软件。

      之前说了,各大厂商对于云计算的重视才将这个名词拖到互联网的最前端,例如Amazon的EC2,Google的GAE,IBM的blue cloud,Yahoo!的Hadoop(其实IBM也采用了这种架构),微软的SCOPE,以及SUN的black box计划。

      Amzaon的EC2的应用似乎时间最长,也是大众最能感受到的云计算,值得一提的是,Oracle CEO,Larry曾经在open world中说云计算多么多么的没用,但同时,Oracle就宣称与Amazone合作推出了融合中间件。。。

      IBM也和Google合作建立了一个用于云计算的大型数据中心,要说云计算,可能互联网就是一个最大的云,换句话说,Google更是这个大云的最大受益者,也许它们也应该感谢十年前微软的错误定位,没有将互联网放在眼里,只是专做desktop。。。Google没有自己的服务器,但IBM有强大的Power PC,强强联合自然更加厉害。。。

      Microsoft这次估计也是不想再次重蹈覆辙,也投身于云计算的研究中,Midori计划是一个微软基于云计算开发的操作系统,云计算,自然要结合到微软的看家之宝Windows上,其核心是可以让其运行在任何设备上,因为几乎所有的云计算都是免费的,所以有人说Midori也许是第一套微软开发的免费操作系统,呵呵。。。

      但我觉得最感兴趣的,就是Sun的black box计划,下图展示的便是black box计划,与IBM相比,Sun也有着高性能服务器领域的优势,Ultra SPARC处理器和Solaris操作系统,black box,从字面意思解释,就是黑盒子,这种黑盒子即可以为拥有上万名员工的大型公司服务,也能为中小企业提供支持,其移动和方便部署的特性,也能用于在后救援等工作。黑盒子位于标准的20英尺长的集装箱内,容纳了数量众多的服务器集群,黑盒子的部署很简单,只要接入电缆、水龙头(水冷散热)和网络线缆,黑盒子便可以投入运作,它可以安置在仓库角落、大楼停车场、楼顶天台或是某个荒郊野岭,是不是很酷?呵呵


posted @ 2008-12-21 01:12 bisal 阅读(362) | 评论 (0)编辑 收藏

2008年7月29日

robots协议标准

    前两天刚知道用爬虫抓取page有个协议的问题,尤其是对于open source的爬虫,刚看到一篇blog,写的就是如此,难怪之前看google的robots也和另外一个U.S.的网站相同,感情是大家都商量好了, 可能这方面中国的一些站点这种意识要稍微淡一点。。。同时这也害得毕设还得另谋思路。。。

    搜索引擎三巨头打的不亦乐乎,但偶尔也合作一下。去年Google,雅虎,微软就合作,共同遵守统一的Sitemaps标准。前两天三巨头又同时宣布,共 同遵守的 robots.txt文件标准。Google,雅虎,微软各自在自己的官方博客上发了一篇帖子,公布三家都支持的robots.txt文件及Meta标签 的标准,以及一些各自特有的标准。下面做一个总结。


三家都支持的robots文件记录包括:

Disallow - 告诉蜘蛛不要抓取某些文件或目录。如下面代码将阻止蜘蛛抓取所有的网站文件:

User-agent: *

Disallow: /

Allow - 告诉蜘蛛应该抓取某些文件。Allow和Disallow配合使用,可以告诉蜘蛛某个目录下,大部分都不抓取,只抓取一部分。如下面代码将使蜘蛛不抓取ab目录下其他文件,而只抓取其中cd下的文件:

User-agent: *

Disallow: /ab/

Allow: /ab

$通配符 - 匹配URL结尾的字符。如下面代码将允许蜘蛛访问以.htm为后缀的URL:

User-agent: *

Allow: .htm$

*通配符 - 告诉蜘蛛匹配任意一段字符。如下面一段代码将禁止蜘蛛抓取所有htm文件:

User-agent: *

Disallow: /*.htm

Sitemaps位置 - 告诉蜘蛛你的网站地图在哪里,格式为:Sitemap: <sitemap_XXXXXX>


三家都支持的Meta标签包括:

NOINDEX - 告诉蜘蛛不要索引某个网页。

NOFOLLOW - 告诉蜘蛛不要跟踪网页上的链接。

NOSNIPPET - 告诉蜘蛛不要在搜索结果中显示说明文字。

NOARCHIVE - 告诉蜘蛛不要显示快照。

NOODP - 告诉蜘蛛不要使用开放目录中的标题和说明。

上面这些记录或标签,现在三家都共同支持。其中通配符好像以前雅虎微软并不支持。百度现在也支持Disallow,Allow及两种通配符。Meta标签我没有找到百度是否支持的官方说明。


只有Google支持的Meta标签有:

UNAVAILABLE_AFTER - 告诉蜘蛛网页什么时候过期。在这个日期之后,不应该再出现在搜索结果中。

NOIMAGEINDEX - 告诉蜘蛛不要索引页面上的图片。

NOTRANSLATE - 告诉蜘蛛不要翻译页面内容。


雅虎还支持Meta标签:

Crawl-Delay - 允许蜘蛛延时抓取的频率。

NOYDIR - 和NOODP标签相似,但是指雅虎目录,而不是开放目录。

Robots-nocontent - 告诉蜘蛛被标注的部分html不是网页内容的一部分,或者换个角度,告诉蜘蛛哪些部分是页面的主要内容(想被检索的内容)。

MSN还支持Meta标签:Crawl-Delay

    另外提醒大家注意的是,robots.txt文件可以不存在,返回404错误,意味着允许蜘蛛抓取所有内容。但抓取robots.txt文件时却发生超时 之类的错误,可能导致搜索引擎不收录网站,因为蜘蛛不知道robots.txt文件是否存在或者里面有什么内容,这与确认文件不存在是不一样的。

posted @ 2008-07-29 14:53 bisal 阅读(677) | 评论 (0)编辑 收藏

oracle 10g express edition安装删除心得。。。

     由于要使用ODM,最好还是装个oracle,但可能由于本科时使用过oracle 9i的缘故,搞的现在还是好担心它的运行情况,所以下了个Oracle 10g的Express Edition,只有200多MB,比标准版小得多,但目前还不知道它对ODM工具的支持情况。。。
     第一次装Oracle 10g Express Edition的时候,由于可能是有tomcat和Heritrix占用了8080端口,导致装的过程中提示错误,没太在意,但无法启动主页面,查了资料,一种说法是改掉其它占用8080端口的软件,一种是改oracle的端口,照着做了一下,两种方法都试了,但依旧无法启动oracle,期间报了两种错误:
1、ORA-01034: ORACLE not available
    ORA-27101: shared memory realm does not exist
2、ORA-01033:   ORACLE   initialization   or   shutdown   in   progress  
     有的说是因为SID_NAME和SERVICE_NAME重复,或者是有多个实例,但改了没有起作用,所以最后决定重新安装,但新的问题出现了,这个版本果然是简版,连删除程序都没有。。。晕。。。直接删目录说有个dll文件无法访问,没办法直接删除,后来经晓晨的询问,确定了可以从注册表中删除的方法,先是删除了注册表中HEKY-LOCAL-MACHINE的SOFTWARE里与Oracle相关的,但重装时仍旧提示oracle的service在运行,即使在服务中停掉了,让然禁止删除。。。后来查了一下,得知服务需要在HKEY-LOCAL-MACHINE的SYSTEM-CurrentControlSet里的Services中删除与oracle相关的项,重启,重装,访问到10g的主页面,由于是简版,主页面是一个基于Web Page的。。。
     由于Oracle改默认端口比较麻烦,所以初学者最好还是装前将8080端口空出来,避免不必要的麻烦,但我觉得仍旧可以在装好oracle之后改它的默认端口,有些资料也是这样说的,有时间可以试一试,现在的问题是如何配合oracle使用Data Miner?如果哪位技术牛人有这方面的经验,希望可以与你们交流~
     最后,再次感谢晓晨!呵呵

我的qq:173635235
    msn:bisal1130@yahoo.com.cn

posted @ 2008-07-29 14:38 bisal 阅读(1957) | 评论 (3)编辑 收藏

2008年7月10日

提问:Heritrix抓取问题

Heritrix应用问题 请教一下大家如何用heritrix抓取以下网站内容,需要定制么?

下面是USPTO的专利网页:
http://patft.uspto.gov/netacgi/nph-Parser?Sect1=PTO2&Sect2=HITOFF&u=%2Fnetahtml%2FPTO%2Fsearch-adv.htm&r=0&f=S&l=50&d=PTXT&OS=+%28battery+OR+motor%29+AND+automobile&RS=%28%28battery+OR+motor%29+AND+automobile%29&Query=+%28battery+OR+motor%29+AND+automobile&TD=45309&Srch1=%28%28battery+OR+motor%29+AND+automobile%29&NextList1=Next+50+Hits
其中NextList1表示第一个50条信息的页面,NextList2,NextList3,以此类推,在这些页面中点击每条超链接得到的是针对此条专利 信息的具体页面,那么现在我如何设置heritrix,可以抓取到每页50条,一共几万条的这些具体专利信息页面到本地呢?另外可否抓取的同时将html 格式转换伪txt格式到本地?谢谢高手指点!

欢迎交流:
qq:      173635235
msn:    bisal1130@yahoo.com.cn
email:  bill1130@gmail.com

posted @ 2008-07-10 08:35 bisal 阅读(1046) | 评论 (1)编辑 收藏

2008年6月13日

Google Map小示例

北京奥运会场馆

posted @ 2008-06-13 11:51 bisal 阅读(342) | 评论 (0)编辑 收藏

2008年2月11日

iphone VS Android ?

    自从Apple去年上半年发布了iphone,已经成为了手机业界一股新的力量,开始重新划分mobile这块大蛋糕,据说全球有30亿的手机用户,那么 这个市场可以堪称是第二个Internet,随着无线技术的发展,智能手机的愈趋完善,手机不只是我们用来打电话的工具了,电邮,IM,录音,甚至刚看到 马宁写的为某公司设计的一个基于windows mobile的BPM系统,手机正在改变人们的生活,还有office,好像扯远了,呵呵。。。
    iphone确实是手机发展的一个milestone,multi-touch技术,无线功能,Mac OS,先进的内置传感器等等,再加上Apple这个无形的品牌,确实让人激动,也显示出Steve的Apple所具有的一种魄力,我还没有使用过 iphone,只是在公车上见过有人用,虚拟的QWerty键盘,镜面屏,真的让人很想好好看一下,呵呵
    直到最近,看到Google推出了它的mobile计划,但是有些特别,并不是一个gphone,而是一个手机platform,基于Linux内核的开 源项目,换句话说,相对于Symbian,Windows Mobile这些封闭系统,它是一个open的环境,允许开发人员,甚至个人对其进行扩展和开发,由于还采用了APL协议,相对于大家所熟知的GPL, APL允许你对APL代码进行使用,但可以对你开发的code不必使用APL,不必开放出来,这样做也会吸引很多厂商
    对了,这个platform的名称是Android,这个名称是Google早些时候收购的一家厂商,它的CEO是Andy Rubin,他也是这个platform的主要创始人,Android包括有用户应用层,应用框架,库和运行时环境,底层Linux内核四个层次,同时提 供了一个SDK,供开发人员使用,还有基于Eclipse的插件,看了一下截图,感觉很直观,可视化效果很好,同时由于Google的原因,所以很多 Google的服务都可以很方便的嵌入,比如Google Map等等,大家有兴趣的话,可以下载Android的SDK或是它的Eclipse插件ADT,参照教程,自己试一试,也许年底或是明年上半年就会有所 谓的gphone样机,不知道那时候大家会选择iphone还是gphone?
    呵呵,对了,Android还有一个或者说是对于程序员来说,比较吸引人的地方,就是它采用java实现和扩展,这样就可以让一些java程序员只需学习Android,就可以进行嵌入式开发这个领域了,是不是很诱人呢?呵呵,一切走着瞧吧~

posted @ 2008-02-11 16:56 bisal 阅读(979) | 评论 (0)编辑 收藏

2008年2月2日

解决一小问题,还有问题请教!

    这几天一直在发愁一个小问题利用SWT Designer做的界面,向另一个java类传值,由于负责接受值的方法是带String参数的,所以在其它方法中调用时就会出线问题,一直不知道如何修改,刚看到了一篇文章,讲到了static静态变量,全局变量(有人说java中没有全局变量的概念,只是类变量),试了一下,果然可以:)解决方法就是在类中定义一个:static String keyword;然后在相应的方法中定义String str=new Computer().keyword;即利用“类.static变量名”的方式就可以引用这个已经接收外来变量值的变量了
    但现在依旧有一个问题,在VB中用ADODB的方式连接到ACCESS数据库,
如果是插入一个字段:Set rs1 = con.Execute("insert into Timing_Test (Seconds) values(“ & Text6.Text & ”)")就没有问题,但如果是两个以上的字段:Set rs1 = con.Execute("insert into Timing_Test (Seconds,Second) values(" & Text6.Text & "," & Text5.Text & "))")就会报错“INSERT INTO语句的语法错误”,可是好像看似没有错误?高手指点!呵呵

posted @ 2008-02-02 17:20 bisal 阅读(300) | 评论 (0)编辑 收藏

仅列出标题  下一页

导航

统计

常用链接

留言簿(4)

随笔档案

文章档案

相册

Java战友兄弟

常用技术交流平台

搜索

最新评论

阅读排行榜

评论排行榜