Spring FileNotFoundException obwohl Datei da ist

Diskutiere FileNotFoundException obwohl Datei da ist im Web Tier Forum; Hallo, ich arbeite mich momentan etwas in die Webentwicklung mit Java (Spring, Struts, JPA, Hibernate, Tomcat) ein. Bisher lief alles super, bis...

  1. eldrior
    eldrior Mitglied
    Hallo,

    ich arbeite mich momentan etwas in die Webentwicklung mit Java (Spring, Struts, JPA, Hibernate, Tomcat) ein. Bisher lief alles super, bis ich eine neue DAO Klasse mit Repository erstellt habe. Nachdem ich die drei Dateien erstellt habe, ließ sich die Anwendung nicht mehr deployen. Ich nutze diese Klassen bisher noch nicht. Lösche ich die Dateien einfach aus dem Projekt, läuft alles wunderbar. Interessant ist, dass die .class Datei im out Ordner genau an der Stelle existiert, an der sie gesucht wird.
    Annotations funktionieren (eigentlich). Zumindest bei 8 weiteren dieser Klassensets funktionieren sie problemlos...
    Ich stehe hier seit zwei Stunden auf dem Schlauch, ich hoffe jemand von euch kann mir helfen. Nachfolgend noch die Informationen, von denen ich glaube, dass sie wichtig sein könnten. Falls ihr mehr braucht, sagt einfach bescheid.

    Fehlermeldung (open)

    Code (Text):

    org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [de.myCompany.ticketSystem.domain.ticketTask.TaskRepositoryImpl] for bean with name 'taskRepositoryImpl' defined in file [/Users/.../Ticketsystem/out/artifacts/Ticketsystem_Web_exploded/WEB-INF/classes/de/myCompany/ticketSystem/domain/TicketTask/TaskRepositoryImpl.class]; nested exception is java.lang.ClassNotFoundException: de.myCompany.ticketSystem.domain.ticketTask.TaskRepositoryImpl
        at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1357)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.determineTargetType(AbstractAutowireCapableBeanFactory.java:629)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.predictBeanType(AbstractAutowireCapableBeanFactory.java:597)
        at org.springframework.beans.factory.support.AbstractBeanFactory.isFactoryBean(AbstractBeanFactory.java:1450)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.doGetBeanNamesForType(DefaultListableBeanFactory.java:420)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:390)
        at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:86)
        at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:681)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:523)
        at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:444)
        at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:326)
        at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:107)
        at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4745)
        at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5207)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:752)
        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:728)
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
        at org.apache.catalina.startup.HostConfig.manageApp(HostConfig.java:1736)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)
        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
        at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
        at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:482)
        at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:431)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)
        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
        at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
        at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1471)
        at javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:76)
        at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1312)
        at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1404)
        at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:832)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:323)
        at sun.rmi.transport.Transport$1.run(Transport.java:200)
        at sun.rmi.transport.Transport$1.run(Transport.java:197)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.rmi.transport.Transport.serviceCall(Transport.java:196)
        at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:568)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:826)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$256(TCPTransport.java:683)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:682)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)
    Caused by: java.lang.ClassNotFoundException: de.myCompany.ticketSystem.domain.ticketTask.TaskRepositoryImpl
        at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1291)
        at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1119)
        at org.springframework.util.ClassUtils.forName(ClassUtils.java:250)
        at org.springframework.beans.factory.support.AbstractBeanDefinition.resolveBeanClass(AbstractBeanDefinition.java:394)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doResolveBeanClass(AbstractBeanFactory.java:1402)
        at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1349)
        ... 56 common frames omitted
    18:54:30.859 [RMI TCP Connection(2)-127.0.0.1] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating shared instance of singleton bean 'org.springframework.context.annotation.internalConfigurationAnnotationProcessor'
    18:54:30.859 [RMI TCP Connection(2)-127.0.0.1] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating instance of bean 'org.springframework.context.annotation.internalConfigurationAnnotationProcessor'
    18:54:30.875 [RMI TCP Connection(2)-127.0.0.1] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Eagerly caching bean 'org.springframework.context.annotation.internalConfigurationAnnotationProcessor' to allow for resolving potential circular references
    18:54:30.877 [RMI TCP Connection(2)-127.0.0.1] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Finished creating instance of bean 'org.springframework.context.annotation.internalConfigurationAnnotationProcessor'
    18:54:30.955 [RMI TCP Connection(2)-127.0.0.1] WARN org.springframework.web.context.support.XmlWebApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanDefinitionStoreException: Failed to parse configuration class [de.myCompany.ticketSystem.domain.ticketTask.TaskRepositoryImpl]; nested exception is java.io.FileNotFoundException: class path resource [de/myCompany/ticketSystem/domain/ticketTask/TaskRepositoryImpl.class] cannot be opened because it does not exist
    18:54:30.955 [RMI TCP Connection(2)-127.0.0.1] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Destroying singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@8c180ed: defining beans [mvcContentNegotiationManager,org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping,mvcCorsConfigurations,org.springframework.format.support.FormattingConversionServiceFactoryBean#0,org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter,mvcUriComponentsContributor,org.springframework.web.servlet.handler.MappedInterceptor#0,org.springframework.web.servlet.mvc.method.annotation.ExceptionHandlerExceptionResolver#0,org.springframework.web.servlet.mvc.annotation.ResponseStatusExceptionResolver#0,org.springframework.web.servlet.mvc.support.DefaultHandlerExceptionResolver#0,org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping,org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter,org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter,taskRepositoryImpl,companyRepositoryImpl,listEntryRepositoryImpl,logRepositoryImpl,personRepositoryImpl,ticketRepositoryImpl,ticketNoteRepositoryImpl,userRepositoryImpl,accountServiceImpl,ticketServiceImpl,org.springframework.context.annotation.internalConfigurationAnnotationProcessor,org.springframework.context.annotation.internalAutowiredAnnotationProcessor,org.springframework.context.annotation.internalRequiredAnnotationProcessor,org.springframework.context.annotation.internalCommonAnnotationProcessor,org.springframework.context.annotation.internalPersistenceAnnotationProcessor,org.springframework.context.event.internalEventListenerProcessor,org.springframework.context.event.internalEventListenerFactory,dataSource,entityManagerFactory,transactionManager,tilesConfigurer,org.springframework.transaction.config.internalTransactionalEventListenerFactory,org.springframework.aop.config.internalAutoProxyCreator,org.springframework.transaction.annotation.AnnotationTransactionAttributeSource#0,org.springframework.transaction.interceptor.TransactionInterceptor#0,org.springframework.transaction.config.internalTransactionAdvisor,org.springframework.context.annotation.ConfigurationClassPostProcessor.importAwareProcessor,org.springframework.context.annotation.ConfigurationClassPostProcessor.enhancedConfigurationProcessor]; root of factory hierarchy
    18:54:30.960 [RMI TCP Connection(2)-127.0.0.1] ERROR org.springframework.web.context.ContextLoader - Context initialization failed
    org.springframework.beans.factory.BeanDefinitionStoreException: Failed to parse configuration class [de.myCompany.ticketSystem.domain.ticketTask.TaskRepositoryImpl]; nested exception is java.io.FileNotFoundException: class path resource [de/myCompany/ticketSystem/domain/ticketTask/TaskRepositoryImpl.class] cannot be opened because it does not exist
        at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:187)
        at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:324)
        at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:246)
        at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanDefinitionRegistryPostProcessors(PostProcessorRegistrationDelegate.java:273)
        at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:98)
        at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:681)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:523)
        at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:444)
        at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:326)
        at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:107)
        at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4745)
        at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5207)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:752)
        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:728)
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
        at org.apache.catalina.startup.HostConfig.manageApp(HostConfig.java:1736)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)
        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
        at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
        at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:482)
        at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:431)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)
        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
        at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
        at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1471)
        at javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:76)
        at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1312)
        at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1404)
        at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:832)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:323)
        at sun.rmi.transport.Transport$1.run(Transport.java:200)
        at sun.rmi.transport.Transport$1.run(Transport.java:197)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.rmi.transport.Transport.serviceCall(Transport.java:196)
        at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:568)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:826)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$256(TCPTransport.java:683)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:682)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)
    Caused by: java.io.FileNotFoundException: class path resource [de/myCompany/ticketSystem/domain/ticketTask/TaskRepositoryImpl.class] cannot be opened because it does not exist
        at org.springframework.core.io.ClassPathResource.getInputStream(ClassPathResource.java:172)
        at org.springframework.core.type.classreading.SimpleMetadataReader.<init>(SimpleMetadataReader.java:50)
        at org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader(SimpleMetadataReaderFactory.java:98)
        at org.springframework.core.type.classreading.CachingMetadataReaderFactory.getMetadataReader(CachingMetadataReaderFactory.java:102)
        at org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader(SimpleMetadataReaderFactory.java:93)
        at org.springframework.context.annotation.ConfigurationClassParser.asSourceClass(ConfigurationClassParser.java:640)
        at org.springframework.context.annotation.ConfigurationClassParser.asSourceClass(ConfigurationClassParser.java:598)
        at org.springframework.context.annotation.ConfigurationClassParser.processConfigurationClass(ConfigurationClassParser.java:235)
        at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:204)
        at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:173)
        ... 54 common frames omitted
     


    Task.java (open)

    Code (Java):
    package de.myCompany.ticketSystem.domain.ticketTask;

    import de.myCompany.ticketSystem.domain.ticket.Ticket;
    import de.myCompany.ticketSystem.domain.user.User;
    import lombok.Getter;
    import lombok.Setter;

    import javax.persistence.*;
    import java.util.Date;

    @Getter
    @Setter
    @Entity
    public class Task
    {
        //region variables
        @Id
        @GeneratedValue (strategy = GenerationType.IDENTITY, generator = "ticketTask_seq")
        @SequenceGenerator (name = "ticketTask_seq", sequenceName = "ticketTask_sequence", allocationSize = 1)
        private Long id;

        @Basic
        private String subject;

        @Basic
        private String text;

        @Basic
        private Date timestmpCreationDate;

        @Basic
        private Date timestmpLastEdit;

        @Basic
        private Date timestmpDue;

        @Basic
        private Date timestmpResolved;

        @Basic
        private Boolean isResolved = false;

        @ManyToOne
        private User user; // <-- has to complete the task

        @ManyToOne
        private Ticket ticket;
        //endregion

        //region methods

        @Override
        public String toString ()
        {
            return ticket.getId() + "." + id + " " + subject;
        }

        //endregion

        //region constructors
        //endregion
    }
     


    TaskRepository.java (open)

    Code (Java):
    package de.myCompany.ticketSystem.domain.ticketTask;

    import java.util.List;

    public interface TaskRepository
    {
        void saveTicketTask (Task ticketTask);

        List<Task> getTicketTasks (Long ticketID);

        List<Task> getTicketTasks (Long userID, Long ticketID);
    }


    TaskRepositoryImpl.java (open)

    Code (Java):
    package de.myCompany.ticketSystem.domain.ticketTask;

    import org.springframework.stereotype.Repository;

    import javax.persistence.EntityManager;
    import javax.persistence.PersistenceContext;
    import java.util.List;

    @Repository
    public class TaskRepositoryImpl implements TaskRepository
    {
        //region variables
        @PersistenceContext
        private EntityManager entityManager;
        //endregion

        //region methods

        @Override
        public void saveTicketTask (Task ticketTask)
        {
            if (ticketTask.getId() == null) entityManager.persist(ticketTask);
            else entityManager.merge(ticketTask);
        }

        @Override
        public List<Task> getTicketTasks (Long ticketID)
        {
            return entityManager.createQuery(
                    "SELECT ticketTask FROM Task ticketTask WHERE ticketTask.ticket.id = :tid ORDER BY " +
                            "ticketTask.timestmpCreationDate",
                    Task.class).setParameter("tid", ticketID).getResultList();
        }

        @Override
        public List<Task> getTicketTasks (Long userID, Long ticketID)
        {
            return entityManager.createQuery(
                    "SELECT ticketTask FROM Task ticketTask WHERE ticketTask.user.id = :uid AND ticketTask.ticket"
                            + ".id = :tid ORDER BY ticketTask.timestmpCreationDate",
                    Task.class).setParameter("uid", userID).setParameter("tid", ticketID).getResultList();
        }

        //endregion

        //region constructors
        //endregion
    }
     


    Und so hab ich Spring gesagt, dass es nach Beans suchen soll:
    Code (Java):
    <context:component-scan base-package="de.myCompany.ticketSystem"/>
    Ich danke euch im Voraus für eure Hilfe und wünsche schonmal einen schönen Abend.
     
  2. tobi_e
    tobi_e Neues Mitglied
    Hallo eldrior,

    rein von der Konfiguration aus sieht das für mich korrekt aus. Wie / womit deployst du deine Applikation?
     
    eldrior gefällt das.
  3. eldrior
    eldrior Mitglied
    Danke für die schnelle Antwort.
    Ich schriebe die Anwendung in IntelliJ und starte direkt über die IDE den Tomcat Server und deploye den Spaß. Ich nutze aktuell Tomcat 8.0.14, aber ich denke das dürfte nebensächlich sein, da die Anwendung ja problemlos funktioniert, wenn ich die drei Klassen lösche...
    Es gibt auch keine Elemente, die ich noch in den WEB-INF Ordner packen müsste (oder könnte).
    Die gesuchten Dateien liegen ja wie gesagt als .class Datei kompiliert vor und werden auch neu kompiliert, wenn ich den Output Ordner lösche.
     
  4. tobi_e
    tobi_e Neues Mitglied
    Ich würde da fast das Deployment über IntelliJ als Fehlerquelle vermuten. Wie sieht denn deine Runner-Configuration für den Tomcat in IntelliJ aus?

    Edit: Probier mal das Deploymentverzeichnis des Tomcat zu löschen (oder zumindest den Ordner deiner Anwendung darin).
     
    eldrior gefällt das.
  5. eldrior
    eldrior Mitglied
    Ok, ich habe das Problem eben durch Zufall "gelöst".
    Die Klasse sollte ursprünglich "TicketTask" heißen. Die Klasse Ticket existierte natürlich schon und lief auch problemlos. Ich habe aus Verdacht vorhin schon die Javadateien zu "Task" umbenannt, allerdings ohne Erfolg. Was jedoch Erfolg hatte war, das Package in "task" umzubenennen.
    Leider konnte ich das Problem nicht mit bspw. "userTask" reproduzieren (user existiert bereits als Package), "ticketTask" funktioniert aber auch nach mehrfachem löschen, neu erstellen, Neustarten der IDE und des Rechners nicht. Komisch.

    Trotzdem danke an alle, die sich das Problem angesehen haben und versucht haben es zu lösen. Falls jemand weiß, warum sich das bei mir so verhält, wäre ich über nen Kommentar dankbar, aber immerhin kann ich jetzt weiter üben :)

    edit: @tobi_e Ich habe bereits alle Deploymentverzeichnisse und Outputverzeichnisse gelöscht. Das war es leider nicht. Und für Tomcat muss ich in IntelliJ nicht viel konfigurieren. Komplett falsch kann es auch nicht sein, da die Anwendung ohne die drei Klassen (oder jetzt mit umbenannten Package) problemlos funktioniert.
     
  6. mrBrown
    mrBrown Super-Moderator Mitarbeiter
    Wenn du dich näher mit Spring etc beschäftigen willst, ist maven oder gradle sehr empfehlenswert ;)
    (und Spring Boot wäre sicher einen Blick wert)
     
Die Seite wird geladen...

FileNotFoundException obwohl Datei da ist - Ähnliche Themen

Datei einlesen mit Scanner funktioniert nicht (FileNotFoundException)
Datei einlesen mit Scanner funktioniert nicht (FileNotFoundException) im Forum Java Basics - Anfänger-Themen
FileNotFoundException
FileNotFoundException im Forum Java Basics - Anfänger-Themen
java.io.FileNotFoundException trotz dass Verzeichnis korrekt angegeben ist!
java.io.FileNotFoundException trotz dass Verzeichnis korrekt angegeben ist! im Forum Java Basics - Anfänger-Themen
Unerklärbare FileNotFoundException
Unerklärbare FileNotFoundException im Forum Allgemeine Java-Themen
java.io.FileNotFoundException
java.io.FileNotFoundException im Forum Java Basics - Anfänger-Themen
Thema: FileNotFoundException obwohl Datei da ist