Servlets 为什么在sling servlet中使用sling.servlet.prefix?

Servlets 为什么在sling servlet中使用sling.servlet.prefix?,servlets,aem,sling,Servlets,Aem,Sling,我正在尝试在sling servlet中使用sling.servlet.prefix选项。根据我的理解,如果我将相对路径放置到resourceType,并将前缀添加到/apps或/libs,它将直接指向该路径。但事实并非如此 > @Component(service=Servlet.class, > property={ > Constants.SERVICE_DESCRIPTION + "=Simple Demo Servlet

我正在尝试在sling servlet中使用sling.servlet.prefix选项。根据我的理解,如果我将相对路径放置到resourceType,并将前缀添加到/apps或/libs,它将直接指向该路径。但事实并非如此

> @Component(service=Servlet.class,
>         property={
>                 Constants.SERVICE_DESCRIPTION + "=Simple Demo Servlet",
>                 "sling.servlet.methods=" + HttpConstants.METHOD_GET,
>                 "sling.servlet.resourceTypes="+ "community-components/components/componentpage",
>                 "sling.servlet.extensions=" + "sample",
>                 "sling.servlet.prefix=" + "/apps"
>         })

请提供帮助。

sling.servlet.prefix的值需要以
/
开头,才能将其值用作前缀。否则,它需要一个整数或一个可以解析为整数的字符串,该整数将作为资源解析程序中搜索路径项的索引,用作前缀

由于前缀不是以
/
开头,它将尝试将其转换为整数,并且由于它不是有效的整数,因此将忽略它

在您的情况下,前缀应该是
/apps/


可以找到有关前缀的更多信息。

sling.servlet的值。前缀需要以
/
开头,才能将其值用作前缀。否则,它需要一个整数或一个可以解析为整数的字符串,该整数将作为资源解析程序中搜索路径项的索引,用作前缀

由于前缀不是以
/
开头,它将尝试将其转换为整数,并且由于它不是有效的整数,因此将忽略它

在您的情况下,前缀应该是
/apps/


可以找到有关前缀的更多信息。

请举例说明。它使用的是数值。但是如果我添加一个以/as/apps或/libs开头的前缀,总会有一个例外。@ShivaniGarg请使用
/apps/
/libs/
,这样会有效。在我的回答中也更新了同样的内容。请用一个例子解释。它使用的是数值。但是如果我添加一个以/as/apps或/libs开头的前缀,总会有一个例外。@ShivaniGarg请使用
/apps/
/libs/
,这样会有效。在我的回答中也更新了同样的内容。