Custom layer: Cannot perform forward pass in layer: input field is not set

Hi if anyone could help

I created custom layers to use for my project but I keep getting the following errors
Cannot perform forward pass in layer MessagePassingImplementation: layer input field is not set

this is my conf

private static MultiLayerNetwork mpnn(Protein p, long sampledFeatures) {
        int seed = 123;
        double learningRate = 0.5;
        int out = 2; // binary
        //Configure the layer with custom GCN and Readout layers
        MultiLayerConfiguration conf = new NeuralNetConfiguration.Builder()
                .seed(seed)
//                .optimizationAlgo(OptimizationAlgorithm.STOCHASTIC_GRADIENT_DESCENT)
                .updater(new Nesterovs(learningRate, 0.5))
                .list()
                .layer(new MessagePassingLayer.Builder()
                        .messageActivationFunction(Activation.SIGMOID)
                        .updateActivationFunction(Activation.SIGMOID)
                        .adjacencyMatrix(p.getAdjacencyMatrix())
                        .nIn(p.getFeatureMatrix().columns())
                        .nOut(p.getFeatureMatrix().columns())
                        .build())
                .layer(new ReadoutLayer.Builder().readActivationFunction(Activation.SIGMOID)
                        .nIn(p.getFeatureMatrix().columns())
                        .nOut(p.getFeatureMatrix().columns())
                        .build())
                .layer(new DenseLayer.Builder()
                        .nIn(p.getFeatureMatrix().columns())
                        .nOut(sampledFeatures)
                        .weightInit(WeightInit.XAVIER)
                        .activation(Activation.RELU)
                        .build()) //Configuring Layers
                .layer(new OutputLayer.Builder(LossFunctions.LossFunction.MCXENT)
                        .weightInit(WeightInit.XAVIER)
                        .activation(Activation.SOFTMAX)
                        .nIn(sampledFeatures)
                        .nOut(2)
                        .build())
                .build();
        return new MultiLayerNetwork(conf);

thanks