存档

文章标签 ‘web services’

IIS 部署WebService时 问题记录

2009年12月16日 stone 没有评论

无法识别的属性"type"

“/”应用程序中的服务器错误。
--------------------------------------------------------------------------------

配置错误
说明: 在处理向该请求提供服务所需的配置文件时出错。请检查下面的特定错误详细信息并适当地修改配置文件。

分析器错误信息: 无法识别的属性“type”。

源错误:
行 10: <configuration>
行 11:  <configSections>
行 12:   <sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
行 13:    <sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
行 14:     <section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
 

源文件: E:\TIANJIAN Project\MobileWebService\MobileWebSrv\web.config    行: 12
--------------------------------------------------------------------------------
版本信息: Microsoft .NET Framework 版本:1.1.4322.2443; ASP.NET 版本:1.1.4322.2407
解决方法: 将部署的该站点属性的ASP.NET选项卡中的ASP.NET版本改为2.X以上的版本.

 

无法找到该页

解决方法: 将IIS的 "WEB服务扩展" 的相关服务进行启用.

 

当前标识(NT AUTHORITY\NETWORK SERVICE)没有对“c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files”的写访问权限。

“/Websrv”应用程序中的服务器错误。
--------------------------------------------------------------------------------

当前标识(NT AUTHORITY\NETWORK SERVICE)没有对“c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files”的写访问权限。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Web.HttpException: 当前标识(NT AUTHORITY\NETWORK SERVICE)没有对“c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files”的写访问权限。

源错误:
执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。 

堆栈跟踪:
[HttpException (0x80004005): 当前标识(NT AUTHORITY\NETWORK SERVICE)没有对“c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files”的写访问权限。]
   System.Web.HttpRuntime.SetUpCodegenDirectory(CompilationSection compilationSection) +748
   System.Web.HttpRuntime.HostingInit(HostingEnvironmentFlags hostingFlags) +223

[HttpException (0x80004005): 当前标识(NT AUTHORITY\NETWORK SERVICE)没有对“c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files”的写访问权限。]
   System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +940
   System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +70
   System.Web.HttpRuntime.ProcessRequestInternal(HttpWorkerRequest wr) +275
--------------------------------------------------------------------------------
版本信息: Microsoft .NET Framework 版本:2.0.50727.1433; ASP.NET 版本:2.0.50727.1433

解决方法:

"开始->运行"中执行 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis -i -enable

Microsoft Windows [版本 5.2.3790]
(C) 版权所有 1985-2003 Microsoft Corp.

C:\Documents and Settings\Administrator>C:\WINDOWS\Microsoft.NET\Framework\v2.0.
50727\aspnet_regiis -i -enable
开始安装 ASP.NET (2.0.50727)。
...............................
ASP.NET (2.0.50727)安装完毕。

C:\Documents and Settings\Administrator>

*.  关于ASP.NET IIS 注册工具 (Aspnet_regiis.exe)

在一台计算机上并行执行多个 .NET Framework 版本时,映射到 ASP.NET 应用程序的 ASP.NET ISAPI 版本决定了该应用程序所使用的公共语言运行库 (CLR) 版本。使用 ASP.NET IIS 注册工具 (Aspnet_regiis.exe),管理员或安装程序可以方便地更新 ASP.NET 应用程序的脚本映射,使其指向与该工具关联的 ASP.NET ISAPI 版本。该工具还可以用于显示所有已安装的 ASP.NET 版本的状态,注册与该工具耦合的 ASP.NET 版本,创建客户端脚本目录,以及执行其他配置操作。
http://msdn.microsoft.com/zh-cn/library/k6h9cz8h(VS.80).aspx

(这次安装的系统,由于是先安装的.net 框架,最后才装的IIS,因此IIS没有对该框架进行访问的限制; 在执行完该命令后,查看v2.0.50727\Temporary ASP.NET Files目录的安全权限中多了ASP.NET、IIS_WPG、Local_Service、Network_Service这几个用户及组)

分类: Note 标签: ,

[LR] 无线**系统的WS模块测试过程记录

2009年6月1日 stone 没有评论

无线**系统的WS模块测试过程记录

测试环境:
WIN2003 + WINXP + ASP.net(asmx/*.cs) + IIS + Oracle10G
IBM 3400 (Xeon E5420 2.50G 四核 ,8G RAM / Server,WIN2003) + Lenovo R61 (Core 2.1G , 2G RAM /Client,WIN2003) + Lenovo R61(Core 2.2G,3G RAM /Client,WINXP)

WS测试:
1.Import WSDL: 搭建好测试环境后,在LR的manage services中以URL方式导入WSDL文件,导入成功后,会在界面最下方提示"The WSDL file associated with this service passed validation with on errors."
2.Add Service Call: Click Add Service Call 按钮,在弹出的窗口中选择WEB 服务以及要对该服务进行的操作(web method),可以在这里对输入输出参数进行设置,也可以在添加完成后对输入输出进行参数化。
3.Replay: Click RUN.
4.Create Scenario.

问题记录:
Q1:
Action.c(4): Error: C interpreter run time error: Action.c (4): Error -- memory violation : Exception ACCESS_VIOLATION received.
A:该问题有不同的解决方法:
(一)、查看参数设置是否正确,传入参数不匹配,或非空的参数为空,都会造成该问题。
(二)、run time settings->Miscellaneous中将thread(线程)换成process(进程)。

Q2:R612003机器上录制脚本没问题,同样的录制方法在R61XP机器上录制,脚本死活通不过,报以下错误:
错误一:
Microsoft Visual C++ Runtime Library
Runtime Error!
Program:
This application has request the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.

错误二:
mmdrv.exe遇到问题需要关闭。我们对此引起的不便表示抱歉。
如果你正处在进程当中,信息可能丢失。

A:对比脚本的WSDL,发现XP当前的用户为中文名,于是换一英文用户登陆,再录制WS脚本,回放通过,该脚本在2003中回放也顺利通过。在录制的过程中最好使用administrator帐户录制。

Q3: 一台机器上录制的脚本,回放通过,在另一台机器上回放通不过。
A:由于录制时使用localhost录制,虽然另一台机器上也有相同的环境,回放是通不过的,所以要想共享脚本,最好使用将localhost换成IP。应该是录制时脚本中会加入唯一识别的标识。

PS:
关于录制协议的选择,WS可以采有Web services 协议进行录制,也可以采用WEB(http/html)方式录制(不需添加WS CALL),只要有类似如aps.net中的.asmx文件提供对WS的支持,并且能通过WEB方式访问得到,业务能成功就是正确的协议。
附代码:
//WEB协议
Action()
{

web_url("localhost:801",
"URL=http://localhost:801/",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t1.inf",
"Mode=HTTP",
LAST);

lr_think_time(14);

web_url("DataWebSrv.asmx",
"URL=http://localhost:801/DataWebSrv.asmx",
"Resource=0",
"RecContentType=text/html",
"Referer=http://localhost:801/",
"Snapshot=t2.inf",
"Mode=HTTP",
LAST);

web_url("GetPdaDbTableList",
"URL=http://localhost:801/DataWebSrv.asmx?op=GetPdaDbTableList",
"Resource=0",
"RecContentType=text/html",
"Referer=http://localhost:801/DataWebSrv.asmx",
"Snapshot=t3.inf",
"Mode=HTTP",
LAST);

lr_think_time(5);

web_submit_data("GetPdaDbTableList_2",
"Action=http://localhost:801/DataWebSrv.asmx/GetPdaDbTableList",
"Method=POST",
"RecContentType=text/xml",
"Referer=http://localhost:801/DataWebSrv.asmx?op=GetPdaDbTableList",
"Snapshot=t4.inf",
"Mode=HTTP",
ITEMDATA,
"Name=dtLastUpdate", "Value=2008.09.05", ENDITEM,
LAST);

return 0;
}

//WS协议
Action()
{

web_service_call( "StepName=GetPdaDbTableList_101",
"SOAPMethod=DataWebSrv.DataWebSrvSoap.GetPdaDbTableList",
"ResponseParam=response",
"Service=DataWebSrv",
"Snapshot=t1243912498.inf",
BEGIN_ARGUMENTS,
"dtLastUpdate=2008.09.05",
END_ARGUMENTS,
BEGIN_RESULT,
END_RESULT,
LAST);

lr_think_time(3);

return 0;
}

感谢ZEE老师和坛里的OK兄,在这个过程中给了我很多的帮助和意见。。。

分类: Note 标签: ,