Problem attaching blueprint weapon to socket

So I’m having trouble attaching my blueprint weapon, a sledgehammer, to a socket I made.
Basically I have a blueprint in the world that the player picks up and it goes into their inventory. Then when I click the use button in the inventory it is supposed to spawn in the world and attach to the socket. It spawns just fine, but it just sits there in the world stationary as in when I move it stays where it is at.

This is what I have for the attaching blueprint.

Mesh2P is the skeletal mesh with the socket on it.

This is the socket setup

One thing I did notice is that for the socket I could only drag the mesh in there to preview and I’m spawning the blueprint class with that mesh in it. Would that cause a problem? If so, how would I spawn just the mesh? I don’t get that option. I’m just lost right now as everything I’ve looked at is pretty similar to what I have but mine doesn’t work.

an alternative approach to consider might be to add a child actor class to your Mesh2P. when the game starts, the child actor class would be set to none. but when a player presses the use button in the inventory, this triggers a function in your character that runs the ‘set child actor class’ node from the child actor component where you would specify the sledgehammer. when the class is set, you could run the attach to component node. here’s an attachment node setup that will keep the actor set to the socket location:

This worked. Although the reason my weapon wasn’t attaching was because for some reason the root component was set to static. This method worked flawlessly though. Thank you.