webx3中(wdetail)处理淘客的一个pipeline:
@Autowired
private HttpServletRequest request;
@Override
public void invoke(final PipelineContext pipelineContext) throws Exception {
final String ttid = request.getParameter(RUNDATA_SPID);
final String pid = ttidMappingPid.get(ttid);
if (StringUtils.isNotBlank(pid)) {
request.getParameterMap().put(TK_PID_PREFIX, pid);
request.getParameterMap().put(TK_APP_ID, "12003897");
}
pipelineContext.invokeNext();
}
请仔细的看一下,该代码有什么问题没?
有,request.getParameterMap().put(TK_PID_PREFIX, pid);会抛异常的。。。
java.lang.UnsupportedOperationException
at
java.util.AbstractMap.put(AbstractMap.java:186)
at
request.getParameterMap() 这里返回的是一个 com.alibaba.citrus.service.requestcontext.parser.impl.ParserRequestContextImpl$ParameterMap
private class
ParameterMap extends
AbstractMap<String, String[]> {
*/
public V put(K key, V value) {
throw new
UnsupportedOperationException();
}
修改方法:
rundata.getParameters().add(key,
value)
rundata.getParameters()返回的是com.alibaba.citrus.service.requestcontext.parser.impl.ParameterParserImpl 有对应的params操作。。
回头看了看httpserlet.getParameterMap
java.util.Map
getParameterMap()
Returns a java.util.Map of the parameters
of this request. Request parameters are extra information sent with the
request. For HTTP servlets, parameters are contained in the query string or
posted form data.
Returns:
an immutable java.util.Map
containing parameter names as keys and parameter values as map values. The keys
in the parameter map are of type String. The values in the parameter map are of
type String array.
所以很明显,我们的webx在这一点上还是很尊重servlet规范的
分享到:
相关推荐
5. **历史记录与收藏夹**:Rational HTTP Request Editor允许保存请求历史,方便回顾和重用过去的请求。此外,用户可以将常用请求标记为收藏,便于快速访问。 6. **断点与调试**:对于开发和调试过程,工具提供了...
ASP(Active Server Pages)是一种由微软开发的服务器端脚本环境,用于生成动态网页或Web应用程序。它允许开发者在HTML代码...同时,对于已经有一定经验的开发者来说,这也是一个回顾基础和学习他人设计思路的好机会。
预定义超全局数组②-$_POST $_REQUEST 9-17 6.预定义超全局数组③-$_SERVER $_ENV $GLOBALS 9-17 7.zend studio使用 项目开发五个阶段 雇员管理系统① 9-19 1.回顾 9-19 2.雇员管理系统②-model1模式简单登录 9-19 3...
- GitHub的Pull Request功能,允许开发者发起代码合并请求,并进行讨论和审查。 - GitLab的Merge Request,提供类似的功能,支持代码差异查看、评论和自动化测试。 - Gerrit,一个基于Git的代码审查系统,支持多...
首先,让我们回顾一下传统的`try-catch-finally`结构: ```java try { // 操作可能会抛出异常的代码 } catch (ExceptionType1 e1) { // 处理ExceptionType1 } catch (ExceptionType2 e2) { // 处理ExceptionType...
这一过程不仅能够帮助我们回顾过去的编程思路,还能够让我们更加熟悉Python的网络爬虫技术。 #### 爬虫基础与目标分析 在开始编写爬虫前,我们需要对目标网站进行一定的分析。本文中的例子是以天津大学的在线评测...
1. 创建请求:通过 `[ASIHTTPRequest requestWithURL:]` 创建一个请求对象,传入目标URL。 2. 设置请求参数:可以通过 `-addRequestHeader:` 添加请求头,`-setPostValue:forKey:` 设置POST请求的参数。 3. 开始请求...
通过创建分支、提交变更和发起合并请求(Pull Request或Merge Request),团队成员可以将代码提交给其他成员进行审核。GitHub和GitLab等平台提供了内置的代码审查功能,便于进行讨论和修改。 4. **代码审查流程** ...
**实践学期JSP回顾** JavaServer Pages(JSP)是一种基于Java技术的动态网页开发工具,它允许开发者在HTML或XML文档中嵌入Java代码,从而实现动态网站内容的生成。JSP是Java EE(企业版)平台的一部分,提供了一种...
- **主要内容:** 探讨如何使用上下文管理器(`with`语句)优化代码结构,以及如何设计数据访问对象(Data Access Object, DAO)模式进行数据持久化。 #### 8. 知识点回顾 - **视频:** 082.01回顾知识点.mp4 - **主要...
- 开源项目可以使用Pull Request机制进行代码审查。 9. **性能优化**: - 在必要时进行性能分析,找出瓶颈并优化。 - 避免过早优化,先保证代码的清晰和可读。 10. **安全性**: - 输入验证是防止注入攻击的...
- **回顾Git的核心概念**: - 版本控制的基本操作。 - 分支与合并的实践。 - 远程仓库的同步。 - **展望未来**: - 探索更高级的功能,如Rebase、Submodule等。 - 不断提升团队协作能力。 #### 第11章:从0开始...
【JSP源代码.rar】是一个压缩包,包含了一个基于Java Server Pages(JSP)技术的小型案例的源代码。...对于初学者来说,这是一个很好的实践机会,而对于有经验的开发者,它可能是一个快速回顾或参考的资源。
在IT领域,尤其是Web开发中,JavaServer Pages(JSP)是一种广泛使用的技术,它允许开发者将静态HTML与...对于初学者来说,这是一个很好的起点,而对于有经验的开发者来说,这些小项目也是检验和回顾JSP基础的好材料。
- 熟悉Pull Request流程。 - 学会解决冲突。 **8. 如何进行单元测试** - **选择合适的框架:** - 根据语言特性挑选测试库。 - 了解主流框架的优缺点。 - **编写有效测试:** - 确保覆盖所有功能路径。 - ...
#### 二、基础知识回顾 1. **JSP (JavaServer Pages)**:是一种用于生成动态网页的技术,它可以在服务器端执行Java代码,并将结果返回给客户端浏览器。 2. **Servlet**:是一个Java类,它可以接收HTTP请求并发送...
- Fork、Pull Request等。 - **如何发现优秀的开源项目**: - 使用GitHub的搜索功能寻找感兴趣的项目。 - **使用GITFLOW管理开发流程**: - GitFlow是一种标准化的分支管理模型。 - **2016Top10 Android Library**:...
【黑魔方jsp网络编程代码】是一套专为学习和实践JSP(JavaServer Pages)技术而设计的代码集合。JSP是Java平台上的动态网页开发技术,它允许开发者将...对于有经验的开发者,这可能是一个回顾基础、提升技能的好资料。
Python语法回顾 - **基本语法**:包括变量定义、数据类型、流程控制(条件判断、循环)、函数定义等。 - **标准库使用**:熟悉Python的标准库,如os、sys、re等,这些库提供了丰富的功能,可以简化编程工作。 ####...
ASP(Active Server Pages)是一种由微软开发的服务器端脚本环境...无论你是Web开发的新手还是寻求对ASP基础的回顾,这都是一个很好的起点。通过实践,你可以将这些理论知识转化为实际的项目经验,进一步提升你的技能。