Leiste mit Community-Erfolgen erweitern.

Submissions are now open for the 2026 Adobe Experience Maker Awards.

Mark Solution

Diese Konversation wurde aufgrund von Inaktivität geschlossen. Bitte erstellen Sie einen neuen Post.

AEM 6.5 Custom Servlet Not found

Avatar

Level 3

Hi everyone,

 

My problem is similar to this thread 解決済み: AEM 6.4 Servlet POST request not hitting servlet - Adobe Experience League Community - 252974 but my problem is when I do the request, I get a 404 error. 

Seems like it is not installed at all and maybe something wrong with my pom file so i really prefer some help.

This is my pom file:

 

<dependency>      
        <groupId>com.adobe.aem</groupId>       
        <artifactId>aem-sdk-api</artifactId>         
        <version>${aem.sdk.api}</version>  
        <scope>provided</scope>
</dependency>

<dependency>
    <groupId>com.adobe.acs</groupId>
    <artifactId>acs-aem-commons-content</artifactId>
    <version>5.3.4</version>
    <type>zip</type>
</dependency>
                 
<dependency>               
        <groupId>com.adobe.cq</groupId>              
        <artifactId>core.wcm.components.core</artifactId>              
        <version>${core.wcm.components.version}</version>          
</dependency>         
                 
<dependency>               
        <groupId>org.junit</groupId>                
        <artifactId>junit-bom</artifactId>            
        <version>5.8.2</version>           
        <type>pom</type>               
        <scope>import</scope>         
</dependency>
                 
<dependency>              
        <groupId>org.mockito</groupId>              
        <artifactId>mockito-core</artifactId>               
        <version>4.1.0</version>             
        <scope>test</scope>    
</dependency>
                 
<dependency>              
        <groupId>org.mockito</groupId>             
        <artifactId>mockito-junit-jupiter</artifactId>           
        <version>4.1.0</version>       
        <scope>test</scope>
</dependency>
                 
<dependency>              
        <groupId>junit-addons</groupId>              
        <artifactId>junit-addons</artifactId>            
        <version>1.4</version>             
        <scope>test</scope>           
</dependency>
                 
<dependency>           
        <groupId>io.wcm</groupId>          
        <artifactId>io.wcm.testing.aem-mock.junit5</artifactId>           
        <version>4.1.8</version>             
        <scope>test</scope>      
</dependency>
                 
<dependency>           
        <groupId>org.apache.sling</groupId>           
        <artifactId>org.apache.sling.testing.caconfig-mock-plugin</artifactId>        
        <version>1.3.6</version>       
</dependency>
                 
<dependency>            
        <groupId>com.adobe.cq</groupId>             
        <artifactId>core.wcm.components.testing.aem-mock-plugin</artifactId>             
        <version>${core.wcm.components.version}</version>             
        <scope>test</scope>         
</dependency>
                 
<dependency>       
        <groupId>uk.org.lidalia</groupId>           
        <artifactId>slf4j-test</artifactId>        
        <version>1.0.1</version>
        <scope>test</scope>     
</dependency>
 
<dependency>             
        <groupId>com.day.commons</groupId>   
        <artifactId>day.commons.datasource.poolservice</artifactId>            
        <version>1.0.10</version>  
        <scope>provided</scope>    
</dependency>
5 Antworten

Avatar

Community Advisor

Could you check whether the bundle is in active state? is it path servlet or resource type servlet? Or a code snippet would help to identify 

Avatar

Level 3

Hi!Thank you for your response!

 

The bundle is in active state and it is a path servlet.

code below

 

package com.adobe.training.core.servlets;

import org.apache.sling.api.SlingHttpServletRequest;
import org.apache.sling.api.SlingHttpServletResponse;
import org.apache.sling.jcr.api.SlingRepository;
import org.apache.sling.api.servlets.SlingAllMethodsServlet;
import org.osgi.service.component.annotations.Component;
import org.osgi.service.component.annotations.Reference;
import java.io.IOException;
import javax.jcr.Session;
import javax.servlet.Servlet;
import javax.servlet.ServletException;
import org.apache.sling.api.servlets.HttpConstants;
import org.osgi.framework.Constants;


@Component(
    service = Servlet.class,
    property = {
        Constants.SERVICE_DESCRIPTION + "=Video servlet",
                        "sling.servlet.paths=" + "/bin/damUpload/video",
                "sling.servlet.methods=" + HttpConstants.METHOD_POST
        })
public class SimplePostServlet extends SlingAllMethodsServlet {
//
}

Avatar

Community Advisor

@zonghuiliu as part of your servlet class can you check in the bundle if the servlet is in satified state or in unsatified state. 

Avatar

Level 3

Hi!Thank you for your response!

 

I'm not sure but seems like it is in unsatified state.

Could you please share the right way to confirm the state?

 

Avatar

Community Advisor