为什么我需要在ServletContext中设置ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE?

时间:2015-12-28 19:16:18

标签: spring servlets cxf

我运行Apache Tomcat服务器并将我的应用程序部署为WAR文件。在应用程序内部,我使用Apache CXF创建了一个简单的REST资源。

inputDir = 'temp2'; I = imread(fullfile(inputDir, 'PJlUm.png')); M = imread(fullfile(inputDir, 'ewSPv.png')); M = logical(M); % Convert M to a logical matrix, i.e. a mask. Imasked = I; Imasked(~M) = 0; ImaskedAndStretched = Imasked; ImaskedAndStretched(M) = imadjust(ImaskedAndStretched(M),stretchlim(ImaskedAndStretched(M)),[]); IstretchedAtMask = I; IstretchedAtMask(M) = ImaskedAndStretched(M); figure; subplot(3,2,1); imshow(I); title('Input Image'); subplot(3,2,2); imshow(M); title('Mask'); subplot(3,2,3); imshow(Imasked); title('Image Masked'); subplot(3,2,4); imshow(ImaskedAndStretched); title('Image Masked & Stretched'); subplot(3,2,5); imshow(IstretchedAtMask); title('Image Stretched At Mask'); 仅引用我的监听器(web.xml)类。 在这个类中,我创建了我的应用程序上下文,并添加了CXF servlet。

如果我遗漏了以下行,虽然资源bean已注册(“未找到服务”。),但CXF无法按预期工作。

您能解释一下这条线的作用,为什么有必要,以及存在哪些替代方案?

ContextListener

完整档案:

servletContext.setAttribute(WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE, applicationContext);

1 个答案:

答案 0 :(得分:0)

CXFServlet(使用Spring)使用Spring的WebApplicationContextUtils。该类依次使用相同的密钥从servlet上下文中检索应用程序上下文。换句话说,当我使用CXFServlet时,我需要使用此键来存储上下文。